14Sep

Ako napísať dávkový skript v systéme Windows

Viete, ako používať príkazový riadok? Ak tak urobíte, môžete napísať dávkový súbor. V najjednoduchšej forme je dávkový súbor( alebo dávkový skript) zoznam niekoľkých príkazov, ktoré sa spúšťajú pri dvojitom kliknutí na súbor. Dávkové súbory prechádzajú do systému DOS, ale stále pracujú na moderných verziách systému Windows.

PowerShell skripty a Bash skripty môžu byť silnejšie, ale dávkové súbory môžu byť stále veľa užitočné, ak potrebujete spustiť základné príkazy systému Windows. Základy dávkového súboru

Dávkový súbor je jednoducho textový súbor uložený s príponou súboru. bat. Môžete napísať jeden pomocou programu Poznámkový blok alebo pokročilejší textový editor ako Notepad ++, ale nepoužívajte textový procesor ako Microsoft Word.

Vytvoríme jednoduchý dávkový súbor. Najprv otvorte program Poznámkový blok. Do tohto riadku zadajte nasledujúce riadky:

ECHO OFF ECHO Dobrý svet PAUSE

Ďalej uložíte súbor kliknutím na položku Súbor & gt;Ušetriť.Zadajte ľubovoľné meno, ktoré chcete, ale nahraďte predvolený prípon súboru. txt príponou. bat.

Napríklad možno budete chcieť pomenovať hello_world.bat.

Teraz máte dávkový súbor s príponou súboru. bat. Dvojitým kliknutím ho spustite. Tento konkrétny dávkový súbor nastaví ECHO( ktorý vyčistí výstup ukrytím príkazov pred vytlačením na výzvu, vytlačí text "Hello World" na obrazovku a potom čaká na stlačenie klávesu pred jeho skončením.)

Ifdo súboru ste nepridali súbor PAUSE, dávkový súbor by jednoducho spustil príkazy a potom sa automaticky zatvoril, v tomto prípade by sa okno "Hello World" vytlačilo do okna a potom ihneď zavrieť okno príkazového riadka.rýchlo spustiť príkazy bez videnia výstupu, môžete to vynechať.Ak používate niekoľko príkazov, môžete umiestniť príkaz PAUSE medzi nimi

písanie zložitejšie dávkový súbor

Je to veľmi jednoduché vytvoriť dávkový súbor.vec, ktorú potrebujete zmeniť, je to, čo píšete do programu Poznámkový blok. Ak chcete spustiť niekoľko príkazov, napíšete každý jeden na jeho vlastný riadok a dávkový súbor sa spustí každý v poradí

Napríklad povedzme, že chceme napísať dávkový súbor, ktorýbeží sevdiagnostické príkazy siete. Možno by sme chceli spustiť ipconfig / all pre zobrazenie informácií o sieti, ping google.com a zistiť, či servery Google reagujú, a tracert google.com na spustenie traceroute na google.com a zistiť, či sú na ceste nejaké problémy.

V najzákladnejšej forme by sme jednoducho mohli umiestniť všetky tieto príkazy do dávkového súboru, jeden po druhom, napríklad:

ipconfig / všetci ping google.com tracert google.com PAUSE

Keď spustíme tento súbor,stačí vidieť výstup každého príkazu hneď za druhým. Ale to nie je nevyhnutne ideálny spôsob, ako napísať dávkový súbor.

Napríklad možno budete chcieť pridať riadky komentárov. Každý riadok začínajúci znakom: : je riadok komentára a nebude vykonaný.To je užitočný spôsob, ako vysvetliť, čo sa deje v súbore pre každého, koho by ste mohli dať - alebo pre vaše budúce seba, kto by mohol zabudnúť na to, prečo tam umiestnite určitý príkaz.

Môžete tiež pridať príkaz "ECHO OFF" na začiatok súboru. Toto sa zvyčajne pridáva na začiatok väčšiny dávkových súborov. Keď to urobíte, samotné príkazy nebudú vytlačené na príkazový riadok, ale výsledky budú.Zobrazia sa napríklad podrobnosti o sieťovom pripojení, ale nie riadok "ipconfig / all".Väčšina ľudí nemá záujem vidieť príkazy, takže to môže vyčistiť výstup.

Takže to by mohlo vyzerať takto:

: : Tento dávkový súbor skontroluje problémy s pripojením k sieti. ECHO OFF: : Zobrazenie podrobností o pripojení k sieti ipconfig / all: : Skontrolujte, či je Google.com prístupný ping google.com: : Spustite traceroute na kontrolu trasy na Google.com tracert google.com PAUSE

Existujú aj iné smerov,s dávkovým súborom ako je tento. Napríklad, možno budete chcieť, aby váš dávkový skript spustil vyššie uvedené príkazy a potom výpis výpisu do textového súboru, ktorý si môžete pozrieť neskôr. Ak to chcete urobiť, použite & gt; & gt;operátor po každom príkaze pripojiť svoj výstup do textového súboru. Keďže budeme čítať výstup z textového súboru, môžeme vynechať príkaz PAUSE.

: : Tento dávkový súbor skontroluje problémy s pripojením k sieti: : a uloží výstup do súboru. txt. ECHO OFF: Zobraziť podrobnosti o pripojení k sieti ipconfig / all & gt; & gt;results.txt: : Skontrolujte, či je Google.com prístupný ping google.com & gt; & gt;results.txt: : Spustite traceroute na kontrolu trasy na Google.com tracert google.com & gt; & gt;results.txt

Po spustení vyššie uvedeného skriptu nájdete súbor s názvom results.txt v rovnakom priečinku ako dávkový súbor s výstupom príkazov. Po spustení dávkového súboru sa okno príkazového riadka automaticky zatvorí.

Príklad, ktorý používame vyššie, spolieha na skutočné informácie o tlači na príkazový riadok, aby ho používateľ mohol prečítať.Mnoho dávkových súborov je však navrhnuté tak, aby sa spúšťali neinteraktivne. Napríklad by ste mohli mať dávkový súbor, ktorý vymaže viac súborov alebo adresárov vždy, keď ho dvakrát kliknete. Stačí použiť príkaz del na odstránenie súborov alebo príkaz deltree na vymazanie adresárov. Nezabudnite, že používate rovnaké príkazy, ktoré by ste spustili v okne príkazového riadka.

V podstate je to bod väčšiny dávkových súborov - stačí niekoľko príkazov za sebou. Dávkové súbory však môžu byť podstatne zložitejšie ako toto. Napríklad môžete použiť príkazy "IF" spolu s príkazom "GOTO", aby ste skontrolovali hodnotu niečoho a potom preskočíte na rôzne riadky v závislosti od výsledku. Je to skôr písanie skutočného malého programu ako rýchly a špinavý skript. To je jeden z dôvodov, prečo. bat súbory sa niekedy nazývajú "dávkové programy". Ak chcete robiť niečo zložitejšie, nájdete veľa sprievodcov, ktoré robia konkrétne veci s dávkovým programovaním online. Teraz však poznáte základy toho, ako jednoducho spoločne hodiť.