"PowerShell" scenarijai ir "Bash" scenarijai gali būti galingesni, tačiau paketiniai failai vis tiek gali būti labai naudingi, jei jums reikia paleisti pagrindines "Windows" komandas.
Baterijos pagrindai
Serijinis failas yra tiesiog tekstinis failas, įrašytas su.bat failo plėtiniu. Galite parašyti vieną naudodami Notepad arba patobulintą teksto redaktorių, pvz., "Notepad ++", bet nenaudokite tokio žodžio procesoriaus kaip "Microsoft Word".
Sukursime paprastą paketinį failą. Pirmiausia atidarykite "Notepad". Įveskite šias eilutes:
ECHO OFF ECHO Hello World PAUSE
Pavyzdžiui, galbūt norėsite jį pavadinti
hello_world.bat
Jei neįtraukėte
PAUSE
į failą, paketinis failas tiesiog paleidžia savo komandas ir automatiškai uždaro. Tokiu atveju "Window Hello World" būtų atspausdintas langas ir iškart uždarytas komandų eilutės langas. Jei norite greitai paleisti komandas nematydami išvesties, galite tai praleisti. Jei naudojate kelias komandas, galite įdėti
PAUSE
vadovauti tarp jų.
Sudėtingesnio paketo failo parašymas
Iš esmės paprasta kurti serijinį failą. Vienintelis dalykas, kurį reikia keisti, yra tai, ką įvedate į Notepad. Norėdami paleisti kelias komandas, kiekvieną iš jų įvesite savo eilutėje, o paketinis failas bus rodomas kiekviename eilėje.
Pavyzdžiui, tarkime, mes norime parašyti serijinį failą, kuriame veikia kelios tinklo diagnostikos komandos. Mes galbūt norėsime paleisti
ipconfig /all
peržiūrėti tinklo informaciją
ping google.com
ar "Google" serveriai reaguoja, ir
tracert google.com
paleisti "traceroute" į google.com ir pamatyti, ar kyla kokių nors problemų.
Labiausiai paprastoje formoje mes galime paprasčiausiai visas šias komandas įdėti į serijinį failą, vieną po kito, taip:
ipconfig /all ping google.com tracert google.com PAUSE
Kai paleisime šį failą, mes tiesiog pamatysime kiekvienos komandos išeitį iškart po kito. Bet tai nebūtinai yra idealus būdas parašyti serijinį failą.
::
yra komentarų eilutė ir nebus vykdoma. Tai padaro juos naudingą būdą paaiškinti, kas vyksta byloje visiems, su kuriais galite tai duoti, arba savo būsimam asmeniui, kuris gali pamiršti, kodėl ten įdėjote tam tikrą komandą.
Galite taip pat įtraukti komandą "ECHO OFF" į failo pradžią. Tai paprastai pridedama prie daugelio partijos rinkmenų pradžios. Kai tai padarysite, pačios komandos nebus atspausdintos komandų eilutėje, tačiau rezultatai bus. Pavyzdžiui, pamatysite tinklo ryšio duomenis, bet ne eilutę "ipconfig / all". Daugeliui žmonių nereikia matyti komandų, todėl tai gali išvalyti produkciją.
Taigi, tai gali atrodyti taip:
:: This batch file checks for network connection problems. ECHO OFF:: View network connection details ipconfig /all:: Check if Google.com is reachable ping google.com:: Run a traceroute to check the route to Google.com tracert google.com PAUSE
>>
operatorius po kiekvienos komandos pridėti savo išvestį į tekstinį failą. Vis tiek turėsime skaityti išvesties iš teksto rinkmenos, bet galime praleisti
PAUSE
komanda
:: This batch file checks for network connection problems:: and saves the output to a.txt file. ECHO OFF:: View network connection details ipconfig /all >> results.txt:: Check if Google.com is reachable ping google.com >> results.txt:: Run a traceroute to check the route to Google.com tracert google.com >> results.txt
Paleidus anksčiau aprašytą scenarijų, failą pavadinimu results.txt rasite tame pačiame aplanke, kuriame yra serijinis failas su komandų išvedimu. Komandų eilutės langas automatiškai bus uždarytas, kai serijinis failas bus baigtas.
del
komandą ištrinti failus arba
deltree
komandą ištrinti katalogus. Atminkite, kad jūs tiesiog naudojate tas pačias komandas, kurias norite paleisti komandų eilutės lange.
Iš esmės tai yra daugelio paketinių rinkmenų taškas - tiesiog paleidžiama kelios komandos viena po kito. Tačiau partijos failai gali būti žymiai sudėtingesni už šį. Pavyzdžiui, galite naudoti "IF" kartu su "GOTO" komandą patikrinti kažko vertę ir tada praleisti į skirtingas eilutes priklausomai nuo rezultato. Tai labiau kaip rašyti tikrą mažą programą nei greitas ir purvinas scenarijus. Tai yra viena iš priežasčių, kodėl.bat failai kartais vadinami "paketinėmis programomis". Jei norite atlikti kažką sudėtingesnio, rasite daugybę nurodymų, kaip atlikti konkrečius dalykus su serijiniu programavimu internete. Bet dabar jūs žinote, kaip paprasta išmėginti kartu.