14Sep

Kaip parašyti paketinį scenarijų sistemoje "Windows"

Ar žinote, kaip naudoti komandinę eilutę?Jei tai padarysite, galite parašyti paketinį failą.Paprastesnėje formoje paketinis failas( arba paketinis scenarijus) yra kelių komandų sąrašas, kuris yra vykdomas du kartus spustelėjus failą.Paketiniai failai grįžta atgal į DOS, tačiau vis dar dirba su šiuolaikinėmis "Windows" versijomis.

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.

paketinio failo pagrindai

Paketinis 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".Įrašykite šias eilutes:

ECHO OFF ECHO Sveiki, pasaulis PAUSE

Tada įrašykite failą spustelėdami File & gt;Sutaupyti. Nurodykite bet kokį pavadinimą, bet pakeiskite numatytąjį. txt failo plėtinį. bat plėtiniu.

Pavyzdžiui, galbūt norėsite jį pavadinti hello_world.bat.

Dabar turite paketinį failą su. bat failo plėtiniu. Dukart spustelėkite jį, kad paleistumėte.Šis konkretus paketinis rinkinys išjungia ECHO( kuris išvalo išvestį, slepia komandas nuo atspausdinimo eilėje, ekrane spausdina tekstą "Sveiki pasaulis" ir laukia, kol paspausite klavišą, kol jis baigiasi.

Jeiį failą neįtraukėte PAUZIJOS, rinkmena paprasčiausiai paleisdavo savo komandas ir automatiškai uždarė. Tokiu atveju jis "Hello World" atspausdins langą ir iškart uždarys komandų eilutės langą. Jei noriteGreitai paleiskite komandas nematydami išvesties, galite tai praleisti. Jei naudojate keletą komandų, galite tarpusavyje įdėti komandą PAUSE.

rašymas sudėtingesnio paketinio failo

Iš esmės paprasta sukurti serijinį failą.dalykas, kurį reikia keisti, yra tai, ką įvedate į Notepad. Norėdami paleisti kelias komandas, kiekvieną iš jų įvesite savo eilute, o paketinis failas bus rodomas kiekvienam eilutėje.

Pavyzdžiui, tarkime, mes norime parašyti paketinį failąeina sevatskiros tinklo diagnostikos komandos. Galbūt norėsime paleisti ipconfig / viską, kad galėtume peržiūrėti tinklo informaciją, ping google.com, norėdami pamatyti, ar "Google" serveriai reaguoja, ir tracert google.com paleisti "traceroute" į google.com ir sužinoti, ar kyla kokių nors problemų.

Labiausiai paprastos formos mes galime paprasčiausiai visas šias komandas įdėti į serijinį failą vienas po kito: taip:

ipconfig / visi ping google.com tracert google.com PAUZĖ

Kai paleisime šį failą, mestiesiog pamatysite kiekvienos komandos išeitį iškart po kito. Bet tai nebūtinai yra idealus būdas parašyti serijinį failą.

Pavyzdžiui, galbūt norėsite pridėti komentarų eilutes. Bet kuri linija, kuri prasideda su: : yra komentarų eilutė ir nebus vykdoma. Tai padaro juos naudingu būdu 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ą.

Galbūt norėsite pridėti 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:

: : Šis paketinis failas tikrina tinklo ryšio problemas. ECHO OFF: : Peržiūrėti tinklo ryšio duomenis ipconfig / all: : Patikrinti, ar Google.com pasiekiama ping google.com: : Pradėti traceroute, norėdami patikrinti maršrutą Google.com tracert google.com PAUSE

Yra ir kitų nurodymųsu tokiu partijos failu. Pavyzdžiui, galbūt norėsite, kad jūsų paketo scenarijus paleistumėte anksčiau nurodytas komandas ir tada išmeskite išvestį į teksto failą, kurį galite peržiūrėti vėliau. Norėdami tai padaryti, naudokite & gt; & gt;operatorius po kiekvienos komandos pridėti savo išvestį į tekstinį failą.Vis tiek turime skaityti teksto failo išvestį, galime praleisti komandą PAUSE.

: : Šis paketinis failas tikrina tinklo ryšio problemas: : ir išsaugo išvestį į. txt failą.ECHO OFF: : Peržiūrėti tinklo ryšio duomenis ipconfig / all & gt; & gt;results.txt: : Patikrinkite, ar Google.com pasiekiama ping google.com & gt; & gt;results.txt: : paleiskite traceroute, kad patikrintumėte maršrutą į Google.com tracert google.com & gt; & gt;results.txt

Paleidus anksčiau pateiktą scenarijų, failą pavadinimu results.txt raskite toje pačioje aplanke kaip ir paketinis failas su komandų išdavimu. Komandų eilutės langas automatiškai bus uždarytas, kai serijinis failas bus baigtas.

Pavyzdys, kurį mes naudojame, remiasi faktiniu informacijos spausdinimu komandinėje eilutėje, kad vartotojas galėtų jį perskaityti. Tačiau daugelis paketinių failų yra suprojektuoti veikti neinteraktyviai. Pavyzdžiui, jūs galite turėti paketinį failą, kuris du kartus paspaudžia jį ištrina keletą failų ar katalogų.Norint ištrinti katalogus, tiesiog reikia naudoti komandą del, arba komandą deltree. Atminkite, kad jūs tiesiog naudojate tas pačias komandas, kurias norite paleisti komandų eilutės lange.

Paprastai tai yra daugelio paketinių rinkmenų taškas - tiesiog paleisti keletą komandų vienas 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šmesti kartu.