Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako používate dávkové súbory na kopírovanie z toho istého priečinka ako súbor?

Existuje niekoľko spôsobov, ako kopírovať súbory z rovnakého adresára ako samotný dávkový súbor. Tu je niekoľko príkladov, ktoré demonštrujú rôzne scenáre a robustnosť:

Metóda 1:Použitie `%~ dp0` (najjednoduchšie a najviac odporúčané)

Táto metóda používa premennú `%~ DP0`, ktorá sa rozširuje na jednotku a cestu aktuálneho dávkového súboru. Toto je najspoľahlivejší a odporúčanejší prístup.

`` `dávka

@cho vypnuté

Kopírujte "%~ dp0myFile.txt" "%~ dp0DestinationFolder \ myfile.txt"

`` `

* `%~ dp0`:Získajte jednotku a cestu dávkového súboru.

* `myfile.txt`:Súbor, ktorý chcete skopírovať. Vymeňte to svojím skutočným názvom súboru.

* `DestinationFolder`:Názov priečinka, kde chcete súbor skopírovať. Vytvorte tento priečinok vopred, ak neexistuje. V prípade potreby tu môžete použiť absolútne cesty.

Metóda 2:Použitie `CD` (menej robustné)

Táto metóda zmení adresár na umiestnenie dávkového súboru pred vykonaním kópie. Je to menej robustné, pretože sa spolieha na správne nastavenie súčasného pracovného adresára.

`` `dávka

@cho vypnuté

pushd "%~ dp0"

skopírovať myFile.txt desartleFolder \ myFile.txt

Popd

`` `

* `Pushd"%~ dp0 "`:Zmení adresár do umiestnenia dávkového súboru. „Pushd` uloží aktuálny adresár, čo vám umožní obnoviť ho neskôr.

* `Popd`:Obnovuje pôvodný adresár.

Metóda 3:Manipulácia s priestormi v cestách súborov (rozhodujúce pre robustnosť)

Ak vaše názvy súborov alebo priečinky obsahujú priestory, musíte ich * citovať. Vyššie uvedené príklady to už robia, ale stojí za to zdôrazniť. Ak sa citujeme, povedie k chybám.

Príklad s priestormi:

`` `dávka

@cho vypnuté

Skopírujte "%~ dp0my file.txt" "%~ DP0Destination Folder \ My File.txt"

`` `

Metóda 4:Kopírovanie viacerých súborov pomocou zástupných znakov

Môžete použiť zástupné znaky na kopírovanie viacerých súborov naraz:

`` `dávka

@cho vypnuté

Kopírujte "%~ dp0*.txt" "%~ dp0DestinationFolder \"

`` `

Toto skopíruje všetky súbory `.txt` z adresára dávkového súboru do` cieľový klenot.

manipulácia s chybami (dôležité)

Ak chcete získať robustnejšie skripty, pridajte spracovanie chýb a skontrolujte, či bola kópia úspešná:

`` `dávka

@cho vypnuté

Kopírujte "%~ dp0myFile.txt" "%~ dp0DestinationFolder \ myFile.txt"> nul 2> &1

Ak % chyby % ==0 (

Súbor Echo sa úspešne skopíroval.

) inak (

Echo Chyba Kopírovanie súboru. Chybový kód:%ErrorLevel %

)

`` `

* `> nul 2> &1`:potláča výstup príkazu` copy`.

* `Ak % ErrorLevel % ==0`:Skontroluje úroveň chýb. `0` znamená úspech.

Nezabudnite nahradiť `" myFile.txt "`, "" Cieľovýfolder "` a ďalšie zástupné symboly so skutočnými názvami súboru a priečinkov. Vždy dôkladne otestujte svoje dávkové súbory. Nesprávne manipulovanie s priestormi v názvoch a cestách je bežným zdrojom chýb.

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené