If-Koubou

Cum se scrie un script batch pe Windows

Cum se scrie un script batch pe Windows (Cum să)

Știți cum să utilizați Promptul de comandă? Dacă faceți acest lucru, puteți scrie un fișier batch. În forma sa cea mai simplă, un fișier batch (sau un script batch) este o listă a mai multor comenzi care sunt executate atunci când faceți dublu clic pe fișier. Fișierele batch merg tot drumul înapoi la DOS, dar încă lucrează la versiunile moderne de Windows.

Scripturile PowerShell și scripturile Bash pot fi mai puternice, dar fișierele batch pot fi încă foarte folositoare dacă trebuie să executați comenzi de bază Windows.

Baze de date bazate pe lot

Un fișier batch este pur și simplu un fișier text salvat cu extensia de fișiere .bat. Puteți scrie unul utilizând Notepad sau un editor de text mai avansat, cum ar fi Notepad ++, dar nu utilizați un procesor de text precum Microsoft Word.

Să creăm un fișier batch simplu. Mai întâi, deschideți Notepad-ul. Introduceți următoarele linii în el:

ECHO de la ECHO Hello World PAUSE

Apoi salvați fișierul făcând clic pe File> Save. Dați-i orice nume doriți, dar înlocuiți extensia implicită .txt cu extensia .bat.

De exemplu, ați putea dori să o numiți hello_world.bat .

Acum aveți un fișier batch cu extensia de fișiere .bat. Faceți dublu clic pe acesta pentru al rula. Acest fișier batch specifică opțiunea ECHO (care curăță ieșirea ascunzând comenzile de la imprimare la solicitare, tipărește textul "Hello World" pe ecran și apoi așteaptă să apăsați o cheie înainte de a se termina.

Dacă nu ați adăugat PAUZĂ la fișier, fișierul lot ar rula comenzile și apoi va fi închis automat. În acest caz, ar fi imprimat "Hello World" la fereastră și apoi închideți imediat fereastra Prompt Command. Când doriți să rulați rapid comenzi fără a vedea ieșirea, puteți omite acest lucru. Dacă executați mai multe comenzi, puteți plasa comanda PAUZĂ comanda între ele.

Scrierea unui fișier lot mai complex

În mod fundamental este simplu să creați un fișier batch. Singurul lucru pe care trebuie să-l schimbați este ceea ce introduceți în Notepad. Pentru a rula mai multe comenzi, tastați fiecare pe propria linie și fișierul lot va rula fiecare în ordine.

De exemplu, să presupunem că vrem să scriem un fișier batch care rulează mai multe comenzi de diagnosticare în rețea. Am putea să fugim ipconfig / toate pentru a vizualiza informațiile despre rețea, ping google.com pentru a vedea dacă serverele Google răspund și tracert google.com pentru a rula un traceroute pe google.com și pentru a vedea dacă există probleme pe drum.

În forma cea mai de bază, am putea plasa pur și simplu toate aceste comenzi într-un fișier batch, unul după altul, cum ar fi:

ipconfig / toate ping google.com tracert google.com PAUSE

Când rulați acest fișier, am vedea doar ieșirea fiecărei comenzi imediat după cealaltă. Dar acest lucru nu este neapărat modul ideal de a scrie un fișier batch.

De exemplu, ați putea dori să adăugați linii de comentarii. Orice linie care începe cu a :: este o linie de comentarii și nu va fi executată. Asta le face o modalitate utilă de a explica ce se întâmplă în fișier pentru oricine ar putea să-i dați - sau pentru viitorul dvs. de sine, care ar putea să uite de ce ați pus o anumită comandă acolo.

S-ar putea să doriți să adăugați comanda "ECHO OFF" la începutul fișierului. Acesta este de obicei adăugat la începutul celor mai multe fișiere batch. Când faceți acest lucru, comenzile nu vor fi tipărite la Prompt Command, dar rezultatele vor fi. De exemplu, veți vedea detaliile conexiunii la rețea, dar nu linia "ipconfig / all". Majoritatea oamenilor nu au grijă să vadă comenzile, deci acest lucru poate curăța ieșirea.

Deci, iată ce ar putea să arate:

:: Acest fișier batch verifică problemele de conectare la rețea. ECHO OFF :: Vezi detalii despre conexiunea la rețea ipconfig / all :: Verificați dacă Google.com este accesibil ping google.com :: Rulați un traceroute pentru a verifica ruta către Google.com tracert google.com PAUSE

Există și alte indicații pe care le puteți folosi cu un fișier de tip batch astfel. De exemplu, s-ar putea să doriți să aveți în scenariu batch executați comenzile de mai sus și apoi să aruncați ieșirea într-un fișier text pe care îl puteți vizualiza mai târziu. Pentru a face acest lucru, utilizați >> operator după fiecare comandă pentru a adăuga ieșirea acestuia la fișierul text. Pe măsură ce citim ieșirea din fișierul text oricum, putem omite PAUZĂ comanda.

:: Acest fișier batch verifică problemele de conexiune la rețea :: și salvează ieșirea într-un fișier .txt. ECHO OFF :: Vezi detalii despre conexiunea la rețea ipconfig / all >> results.txt :: Verificați dacă Google.com este accesibil ping google.com >> results.txt :: Rulați un traceroute pentru a verifica ruta către Google.com tracert google. com >> results.txt

După ce executați scriptul de mai sus, veți găsi un fișier numit results.txt în același director ca fișierul batch cu ieșirea comenzilor. Fereastra Prompt comandă se va închide automat odată ce fișierul batch este terminat să fie executat.

Exemplul pe care îl folosim mai sus se bazează pe tipărirea de informații către Promptul de comandă, astfel încât utilizatorul să o poată citi. Cu toate acestea, multe fișiere batch sunt proiectate să funcționeze non-interactiv. De exemplu, ați putea avea un fișier batch care șterge mai multe fișiere sau directoare ori de câte ori faceți dublu clic pe el. Trebuie doar să utilizați del comanda pentru a șterge fișiere sau DELTREE comanda pentru a șterge directoarele. Rețineți că utilizați doar aceleași comenzi pe care le-ați executa într-o fereastră de comandă.

În mod fundamental, acesta este punctul din cele mai multe fișiere batch - care rulează doar câteva comenzi una după alta. Cu toate acestea, fișierele batch pot fi de fapt mult mai complexe decât acestea. De exemplu, puteți utiliza instrucțiunile "IF" împreună cu comanda "GOTO" pentru a verifica valoarea ceva și apoi să treceți la linii diferite în funcție de rezultat. Acest lucru este mai mult ca scrierea unui mic program real decât un script rapid și murdar.Acesta este unul dintre motivele pentru care fișierele .bat sunt uneori numite "programe batch". Dacă doriți să faceți ceva mai complex, veți găsi o mulțime de ghiduri pentru a face anumite lucruri cu programarea lotului online. Dar acum, știți elementele de bază ale modului de a arunca unul simplu împreună.