Bat fail - mis see on, milleks seda kasutatakse ja selle võimalused. Bat faili käsud. Kuidas luua nahkhiirefaili? Põhilised käsud

Selles artiklis vaatleme sellist kasulikku asja nagu " partiifail" Kõigepealt määratleme, mis on nahkhiirefail. Pakett- või partiifailid on lihtsad tekstifailid, mis sisaldavad käskude komplekte ( juhiseid) tõlk ja millel on laiendus bat või cmd ( cmd töötab ainult NT perekonna operatsioonisüsteemides). Selliseid faile saate luua ja redigeerida tavalise märkmiku või mõne muu tekstiredaktoriga.

Nüüd võite küsida, miks on vaja selliseid nahkhiirefaile kirjutada? Ja miks neid vaja on? Püüan selgitada.

Esiteks kasutatakse neid töö hõlbustamiseks, s.t. Näiteks peate pidevalt iga päev mõnda toimingut tegema ( näiteks luua teatud dokumentidest arhiiv), saate kehafaili abil seda automatiseerida ja te ei osale enam selles.

Teiseks on need pakifailid väga võimsad ( kui muidugi oskate neid kirjutada), st. Võite isegi kirjutada hea programmi ( Pean silmas funktsionaalsust). Isiklikult aitavad nad mind minu töös palju ja ma lihtsalt unustasin mõned asjad käsitsi tehes.

Liigume nüüd otse nende pakkfailide põhitõdede juurde. Kuidas need luuakse, peate lihtsalt looma tekstidokumendi, avama selle ja minema kohe jaotisesse "? Fail->salvesta nimega", sisestage laiendi "" asemel Tekst document.txt", Näiteks " Tekst document.bat" ja salvestage, nii et saame partiifaili laiendiga .bat, kuid see ei tee veel midagi.

Alustuseks toon näite pakifailist, mida kasutan oma töös dokumentide arhiveerimiseks.

"C:\Program Files\WinRAR\winrar.exe" a -r -dh -ed -agYYYY-mm-dd E:\arhaccounts\ d:\accounts\*.doc "C:\Program Files\WinRAR\winrar. exe" a -r -dh -ed -agYYYY-mm-dd E:\arhaccounts\ d:\accounts\*.xls "C:\Program Files\WinRAR\winrar.exe" a -r -dh -ed -agYYYY -mm-dd E:\arhaccounts\ d:\accounts\*.txt

Nüüd räägin teile natuke sellest, mida see pakkfail teeb. WinRar käivitub, seejärel järgnevad Winrari käsud:

  • a - see on arhiivi lisamiseks;
  • -r - töötle alamkaustad;
  • -dh - avage jagatud failid;
  • -ed - ära lisa tühje kaustu;
  • YYYY-mm-dd - lisage arhiivi nimele praegune kuupäev ( kuupäevavorming);
  • E:\arhaccounts\ - tee, kuhu lõplik arhiiv asub;
  • d:\accounts\*.doc - arhiveerimist vajavate failide tee ja mask.

Sel juhul arhiveerime kõik Wordi, Exceli ja tekstifailid, me ei pea ülejäänuid arhiivima. Meie arhiveerimine läheb teisele kettale, samuti kopeerime saadud arhiivi teise arvutisse, nii et arhiive hoitakse teises kontoris. Kopeerimine toimub üle võrgu, nii et arvuti, kuhu arhiiv kopeeritakse, peab olema sisse lülitatud. Selleks saate kasutada järgmist käsku:

Kopeeri E:\arhaccounts\*.rar \\namecomp\arhiv\

Bat-failide käskude näited

Vaatame nüüd põhilisi käske, mida saate kasutada.

Kui peate faili kustutama, kirjutage järgmine tekst:

Del d:\file\test.doc


Kogu kataloogi kustutamiseks kirjutage:

Rd d:\fail\

Kui peate iga kord mõnest kataloogist kõik kustutama, kasutage seda:

Kaja Y| del d:\file\

  • del d:\file\ - see on täpselt kõigi failide kustutamine;
  • kaja Y| - käsk kinnitab kustutamise, sest Kui te seda käsku ei sisesta, näete kustutamist kinnitavat teadet - "Jätka" ja peate sellele küsimusele iga kord vastama.

Vaatame nüüd keerulisemat näidet, kus tingimus on juba täidetud:

@echo off "C:\Program Files\WinRAR\winrar.exe" x -O+ -IBCK d:\test\test.rar d:\test IF EI OLEMAS d:\test\123.rar MINGE 1, KUI OLEMAS d: \test\123.rar GOTO 2:2 "C:\Program Files\WinRAR\winrar.exe" x -O+ -IBCK d:\test\123.rar c:\ del d:\test\123.rar:1 del d:\test\test.rar end

Nüüd ma selgitan, oletame, et peate lahti pakkima arhiivi test.rar, mis sisaldab palju faile, kuid kui seal on fail 123.rar, tuleb see lahti pakkida draivi C juure ja ülejäänud failid jäävad samasse kataloogi puutumata.

Selleks on vaja käsku @echo off, et ekraanil midagi ei peegelduks ( põhimõtteliselt, kui te seda ei vaja, võite selle rea kirjutamata jätta). Järgmisena käivitame Winrari ja pakime test.rar arhiivi testkausta lahti. Siis tuleb tingimus, kui testkaustas ( pärast lahtipakkimist test.rar) meil pole faili 123.rar, siis käivitame lihtsalt pakifaili ja läheme reale: 1 ja seejärel lihtsalt kustutame faili test.rar, kuna see pole vajalik, kuna Oleme juba kõik vajaliku lahti pakkinud. Aga kui seal on fail 123.rar, siis pakkfaili täitmine läheb reale: 2, misjärel fail 123.rar on juba lahti pakitud draivi C juure. Teisisõnu, meil on tingimus täidetud , kui fail on, siis tehke seda, kui faili pole, tehke seda. Oletame, et kui me selles näites tingimust ei täpsusta, annab meie pakettfail veateate, kui meil pole selles kaustas faili 123.rar.

Vaatame nüüd näidet: oletame, et peate iga kord teisaldama failid draivil D asuvast kataloogist mälupulgale. Iga kord, kui peate minema minu arvuti draivi D, valima soovitud kausta, valima sellest kõik failid ja lõikama selle ning seejärel lihtsalt minema mälupulgale ja kleepima see. Kehafaili abil saab seda teha ühe klõpsuga ( ühe tingimusega, et iga kord on mälupulgal näiteks ketas G või mis iganes sul on). Siin on näide sellisest partiifailist:

Teisalda "D:\catalog\*.doc" G:\catalognaflehe\

Ja kõik doc-laiendiga failid, mis asuvad kataloogis D:\catalog, teisaldatakse mälupulgale. Nüüd tahan öelda, et saate pakkfailides kasutada skripte ( skriptid) kasutades Windowsi skriptimishosti ja vajadusel näiteks sõnumi kuvamiseks pärast failide kopeerimist ( eelmine näide) kleebi see:

Echo var WSHShell = WScript.CreateObject("WScript.Shell"); > %temp%\mes.js echo WSHShell.Popup("Failid kopeeritud"); >> %temp%\mes.js algus %temp%\mes.js deltree /y %temp%\mes.js

Tegelikult saab pakifailide kirjutamisest palju rääkida ja see ei mahu muidugi ühte artiklisse. Näitasin siin ainult niiöelda nahkhiirefailide kirjutamisel kasutatavaid põhimõtteid. Kui soovite teada rohkem käske pakkfailide kirjutamiseks, saate neid hõlpsalt vaadata, tippides ( Start - Run - cmd) abikäsku, kuid loomulikult pole kõiki käske, mida saab pakifailides kasutada. Edu BAT-failide kirjutamisel ( keha särgid).

Teema jätk artiklis -

Tervitused! Täna otsustasin teile rääkida nahkhiirfailidest ehk pakkfailidest, nagu neid lihtsalt nimetatakse. Eeldan, et nahkhiirefailide kasutamine on kasulik igale arvutikasutajale, laiendab võimalusi ja lihtsustab paljude ülesannete täitmist.

Mis on baht ja miks seda vaja on?

Bat on faililaiend (bat). Kindlasti teavad paljud kasutajad, et igal failil on oma laiend. See on viimane rida pärast pealkirjas olevat punkti. Just selle “saba” peab süsteem tuvastama muusika, video, pildi või muuna. Võite isegi katsetada. Tehke mis tahes pilt ja nimetage see koos laiendiga ümber. Windows teavitab teid kohe laienduse muutmisest ja süsteem ei pruugi faili tuvastada. Nõustuge taotlusega ja näete, et teie pilti enam pildina ei kuvata. Kui nimetate selle ümber nagu varem, taastatakse kõik uuesti. Kui laiendused pole teile nähtavad, peate selle funktsiooni Exploreris vahekaardil Vaade aktiveerima.

Windowsi puhul on nahkhiir fail, mis sisaldab juhiseid teatud toimingute jaoks, mis sisalduvad nahkhiirefailis endas. Käivitub tühi bahtivormingus fail, kuid toiminguid ei tehta. Pakettfail on juhiste kogum Windowsi konsooli jaoks.

Kuidas luua programmi käivitamiseks bat-faili?

Pakettfaili loomiseks peate käivitama tekstiredaktori ja seejärel salvestama faili lõpliku nimega bat. Kui teie redaktoril pole sellise laiendiga salvestamisfunktsiooni, peate selle ise registreerima. Kui käivitame sellise faili, avaneb konsool ja kui käske pole, sulgub see kohe.

Nüüd määrame käsu programmi käivitamiseks. Selleks peate Notepadis või mõnes muus redaktoris avama meie loodud partiifaili ja sisestama käsu.

Näitena käivitame brauseri. Esmalt tuleb sisestada käsk Start ja pärast tühikut kirjutada Opera.

See peaks välja nägema selline:

Käivitage Opera

See töötab süsteemile teadaolevate programmide puhul, kuid kui käivitate tarkvara, mida süsteem ei tunne, peate kirjutama kogu programmi teekonna. Näiteks kui teil on programmifailide kausta installitud ftp, peate selle käivitamiseks sisestama käsu

käivita filezilla

Ja kui ftp-klient on installitud teise kausta, peate sisestama kogu tee.

Pakettfailide rakendusala on üsna lai. Konfiguratsioonis saate sisestada mitmesuguseid käske. Need leiate Internetist Kui olete huvitatud täpsemast teabest käskude kohta, kirjutage kommentaaridesse ja ma proovin teile vastata. VBS töötab sarnaselt. See on sama asi, ainult käske ei täideta konsooli kaudu ja käsud on veidi erinevad.

See tehnoloogia aitab täita erinevat tüüpi ülesandeid ja automaatrežiimis. Mõned kasutajad kirjutavad sel viisil isegi viiruseid. Et muuta faili konfiguratsiooni tekstiredaktoriga võimatuks, peate bat-faili teisendama exe-ks. See aitab teha erinevat abitarkvara, mida leiate Internetist. Näiteks nahkhiire teisendamiseks exe-ks on abiks Bat to exe konverteerimisprogramm.

Bahti funktsioon on väga kasulik ja mõnikord vajalik. Selle abil saate kirjutada terveid programme kitsa tegevusalaga. Rakenduse ulatus sõltub ainult käskude tundmisest ja oskusest neid kombineerida. Seetõttu kasutage ja laiendage oma oskusi ja oskusi kasutada arvutit superkasutaja tasemel.

Kas soovite oma arvuti eluiga pikendada? Seejärel looge süsteemiressursside säästmiseks mitmesuguseid kasulikke programme ja utiliite. Saate neid käivitada ainult ühe partiifaili abil.


Windowsi operatsioonisüsteemiga arvutite kasutajad puutuvad sageli kokku failidega, mille laiend on .bat. Need on nn partiifailid. Milleks need on mõeldud, kuidas neid luuakse ja muudetakse, millised probleemid on kasutajatel pakifailidega töötamisel?

Mis on nahkhiirefail? Milleks see mõeldud on?

Bat fail on tekstifail, mis sisaldab kindlat märgikomplekti, mis sisestatakse käsureale. Ainult ühe faili käivitamisega säästab kasutaja aega suure hulga toimingute tegemisel. Selliseid faile kasutatakse sageli korduvate kasutajatoimingute automatiseerimiseks. Faili laiendiga .bat nimetatakse partiifailiks (käsufailiks). Kasutajate slängis nimetatakse seda “batnikuks”.

Bat failide näited

Seal on palju kasulikke nahkhiirefaile, mille abil saate oma arvutisüsteemi juhtida, viirusi käivitada ja isikuandmeid varastada.
Mõnede populaarsete täitmisfailide näited:
  • Tühjade kaustade ja alamkaustade kustutamine arvutis faili käivitamise kohast - /f jaoks “usebackq delims=” %%d in (`"kataloog /ad/b/s | sort /R"`) do rd "% %d"
  • Pea meeles! Kui kaustas on .db või .ini laiendiga peidetud faile, on kausta kustutamine võimatu.
  • Teabefailide ülekandmine alamkaustadesse, mis näitavad toimingu kuupäeva – SET FOLDER=%DATE:~-4%-%DATE:~3.2%-%DATE:~0.2%
    SET ARCFOLDER=Z:\_exchange\%FOLDER%mkdir %ARCFOLDER%
  • Järgmiste käskude viivituse programmeerimine vajalikuks ajaks – valik /N /T:y,%sec% > null
  • Käivitage fail minimeeritud aknas - käivitage /m /w %path\file%
Tuhanded erinevad nahkhiirefailid aitavad programmeerijatel ja kasutajatel arvutiga suhelda, leida väljapääsud väga erinevatest olukordadest ning puhastada süsteemi viirustest ja pahatahtlikest koodidest. Pakettfailide skriptide kirjutamise protsess sõltub täielikult kasutajate kujutlusvõimest.

Kuidas avada nahkhiirelaiendiga faili

Sellise faili käivitamisega saate avada ja sulgeda paljusid programme. Mõnda neist ei kasutata Windowsi hilisemates versioonides.
Näited ülesannetest, mida saab lahendada bat-faili käivitamisega:
1. Ühe või mitme süsteemisiseseid funktsioone täitva utiliidi aktiveerimine - taimer arvuti sisse- ja väljalülitamiseks, lõikepuhvri automaatne tühjendamine aegunud teabest, Wi-Fi pääsupunktide korraldamine. Esimene käivitatav käsk on start "" programmitee_tee. Kui on tühikuid, peate lisama tee jutumärkidesse, alustades "" "C:\Program Files\program.exe".
Järgmisena peaksite määrama käivitusparameetrid start "" c:\windows\notepad.exe fail.txt. Käivitusprotsessil on üks eripära. Kui te ei kasuta käsufaili nime määramisel jutumärke, ei pruugita käske õigesti täita.
2. Saate käivitada uue juba avatud failist, tippides käsu call path_to_file_bat parameters. Teave nende kohta on teises bat-failis: call file2.bat parameeter1 parameeter2 parameeter3.
Teiste programmide aktiveerimiseks kasutage järgmisi käske:
  • kaja % 1
  • kaja %2
  • kaja %3
  • paus
Pärast kõiki tehtud toiminguid kuvatakse ekraanile kõik ülekantud parameetrid. Kui muud toimingute järjekorda ei sisestata, sulgub käsuaken automaatselt. Pausikäsk peatab programmi ja sulgeb tööakna.

Kuidas luua Windowsis nahkhiirefaili? Järjestus

Lihtsaim viis nahkhiirefaili loomiseks on kasutada NotePadi programmi. Pärast programmi aktiveerimist paneelil “Standard” või käsu C:\Windows\notepad.exe kasutamist sisestatakse või kopeeritakse kood märkmiku lehele.

NotePadis peab fail olema salvestatud laiendiga .bat. Peate hoolikalt veenduma, et salvestatud fail on tüüpi "Kõik failid".


Tähtis! Kui bat-faili ei ole võimalik kindlasse kausta salvestada, kuna kasutajal pole administraatori õigusi, kuvatakse arvutiekraanile teade "Teil pole luba failide salvestamiseks sellesse asukohta". Muutke faili asukohaks "Töölaud" või "Dokumendid". Pärast seda kasutage kopeerimist, et see arvutis soovitud asukohta üle kanda. Fail .bat on loodud.

Kas bat faili on võimalik muuta

Laiendiga .bat faile saab redigeerida, et muuta erinevaid parameetreid. Seda on võimalik saavutada mitmel viisil.
Esiteks. Avage kontekstimenüü ja valige käsk Redigeeri. Vajalikud muudatused tehakse failis mis tahes arvutisse installitud tekstiredaktoris.


Teiseks. Tehtud ka NotePadi abil. Peate avama Exploreri, leidma faili ja lohistama selle hiirega tööalale.


Kolmandaks. Minge Notepadi, leidke menüüst "Fail" soovitud pakkfailiga kaust.


Järgmisena muutke faili kuvamise suvandit nii, et "Kõik failid" oleks aktiivne. Pärast seda saate faili avada ja redigeerida, muutes vajalikke parameetreid ja käske.


Pea meeles!Ülaltoodud redigeerimismeetodite kasutamisel tuleb lõplik fail salvestada laiendiga "Kõik failid". Vastasel juhul salvestab arvuti muudetud faili tekstifailina - *.txt.

Peate administraatorina käivitama bat-faili

Faili administraatorina käivitamiseks peate nimel paremklõpsama ja täitma käsu "Käivita administraatorina".

Pakettfaili käivitamiseks on veel mitu võimalust.
1. Pärast START-nupu vajutamist (WIN või Ctrl+Shift+Esc kombinatsioon) peate:
  • lülitage ladina tähestikule ja tippige klaviatuuril käsk command.bat.
  • valige käivitatav fail *.exe.
  • käivitage fail, kasutades käsku "Käivita administraatorina".
2. Avage tegumihaldur (Ctrl + Shift + Esc või Ctrl + Alt + Delete), valige vahekaardil „Protsessid“ käsk „Kuva kõigi kasutajate protsessid“. Menüüs "Fail" kasutage klahvikombinatsiooni Ctrl + vasakklõps, et klõpsata vahekaardil "Uus ülesanne", seejärel klõpsake nuppu Käivita.
3. Kui failitüüpide kuvamine on lubatud, saate luua *.txt faili, anda sellele soovitud nime ja muuta laiendiks .bat.

Miks bat fail ei tööta? Võimalikud põhjused

Kõige tõenäolisemad põhjused, miks arvuti ei reageeri .bat-laiendiga käsufaili täitmisele või selle vale töö pärast käivitamist:
  • käskude vale kirjutamine skriptides
  • kirjavahemärkide vale kasutamine
Enamasti juhtub see siis, kui muudate hooletult klaviatuuripaigutuse ladina keelest vene keelde. Käsufailid ei aktsepteeri kirillitsat. Need kohad, kus skriptis esineb venekeelset fonti, on arvutile arusaamatud. Üsna loomulikult muutub nahkhiirefaili täitmise tee.

Kuidas luua faili laiendiga bat: video

Vaadake videoõpetust laiendiga .bat faili loomise kohta siit:

Selles artiklis:

  • Muutujate määratlemine
  • Käsurea muutujad (bat-faili kutsumise parameetrid)
  • IF tingimuslik operaator
  • Funktsioonid
  • Tagastusväärtuste kasutamine (väljumiskoodi töötlemine)

Muutujate määratlemine

SET<Имяпеременной>=<Значениепеременной>

SET-lause on operatsioonisüsteemi parameetritega manipuleerimise võime laiendus. See määrab muutuja, mille väärtus asendatakse selle nimega, kui seda nime kasutatakse protsendimärkide vahel. Seega, kui see on antud (muutuja, mida paljud arvuti helikaarti kasutavad mängud nõuavad):

SET BLASTER=A220 I5 D1 P330

siis, kui kasutate partiifailis järgmist konstruktsiooni:

ECHO %BLASTER%

Ekraanile kuvatakse "A220 I5 D1 P330". SET-lause abil defineeritud muutujaid nimetatakse keskkonnamuutujateks ja need on pärast täitmist nähtavad kuni DOS-i taaskäivitamiseni (kui neid pole mälus käsitsi muudetud). See tähendab, et seda saab kasutada ühest partiifailist või -programmist pärast seda, kui see on määratletud teises. Kõige kuulsam on muutuja PATH, mis on failide kiireks otsimiseks vajalike teede kogum. See on määratud failis autoexec.bat.

Käsurea muutujad
(parameetrid nahkhiirefaili kutsumiseks)

%<цифра 0-9>

Nagu igas keeles, on ka pakkfaili keeles võimalik kasutada batfaili parameetritena saadud muutujaid.

Kokku võib olla 10 samaaegselt olemasolevat sõltumatut muutujat. See on keerukate programmide kirjutamiseks üsna väike, kuigi tavaliseks tööks piisab sageli 3-4-st. Muutuja väärtus on võrdne käsurealt vastava parameetri väärtusega. Muutuja %0 sisaldab .bat-faili nime ja kui olete selle määranud, siis selle asukohta. See tähendab, et kui käivitasite faili abc.bat järgmiste parameetritega:

abc.bat a bc def

siis sisaldab muutuja %0 väärtust abc.bat , %1 väärtust a , %2 bc ja %3 def . Seda omadust kasutatakse laialdaselt mitmekülgsete pakkfailide loomiseks korduvate toimingute puhul.

Kui soovite käsurealt saada rohkem kui 10 muutujat, võite kasutada käsku SHIFT.

SHIFT-käsk võimaldab kasutada rohkem kui 10 käsureaparameetrit. Vastavad varasemad parameetrid lähevad aga kaotsi. Teisisõnu, käsk SHIFT nihutab kõiki muutujate väärtusi ühe sammu võrra vasakule. See tähendab, et muutuja %0 sisaldab väärtust, mis varem sisaldus muutujas %1, ja muutuja %1 sisaldab muutuja %2 väärtust enne nihet. See toiming on aga pöördumatu, see tähendab, et muutujaid tagasi nihutada on võimatu.

IF tingimuslik operaator

Õnneks toetab tänapäevaste Windows 2000 ja uuemate versioonide cmd.exe käsutõlk hargnevates konstruktsioonides käsuplokke, mis välistab vajaduse siltidega IF-ide järele. Käsuplokid on sulgudes. See näeb välja selline (imiteerib C/C++ treppimisstiili):

kui tingimus (

Rem 'siis' haru käsud

Rem...

) muidu (

Rem Haru „muu” käsud

Rem...

Konkreetse kasutuse näide:

@kaja väljas

määra BUILDMODE=%1

kui "%BUILDMODE%" == "" (

Echo FAIL: argument on nõutav ^(--debug, --release^)

Välju /b 1

rem Töötlemise lihtsustamiseks eemalda argumendist kõik sidekriipsud

määra BUILDMODE=%BUILDMODE:-=%

if "%BUILDMODE%" == "silumine" (

Määra CCFLAGS=/Od /MDd /Z7

) muidu (

Määrake CCFLAGS=/O2 /MD

Minu arvates on sellega täiesti võimalik elada. Kuid nagu alati, pole elu nii lihtne, kui tundub. On üks probleem. Muutujaid, mida kasutatakse siis ja muudes plokkides, laiendatakse enne plokkide käivitamist, mitte täitmise ajal. Ülaltoodud näites ei põhjusta see probleeme, kuid järgmises:

if "%BUILDMODE%" == "silumine" (

Echo INFO: silumiskeskkonna režiimi seadistamine

Määrake OPTFLAGS=/Od

Määra CCFLAGS=%OPTFLAGS% /MDd /Z7

) muidu (

Echo INFO: keskkonna vabastamise režiimi seadistamine

Määra OPTFLAGS=/O2

Määra CCFLAGS=%OPTFLAGS% /MD

Konks on selles, et mõlemas plokis toimub OPTFLAGS muutuja asendamine enne, kui seda ploki täitmise ajal muudetakse. Vastavalt sellele täidetakse CCFLAGS väärtusega, mis oli OPTFLAGS-il selle ploki käivitamise ajal.

See probleem lahendatakse muutuja viivitusega laiendamise abil. Muutujad, mis sisalduvad !…! %...% asemel selguvad nende tähendused alles otsese kasutamise hetkel. See režiim on vaikimisi keelatud. Saate selle lubada, kasutades cmd.exe kutsumisel lülitit /V:ON või käsku:

nahkhiirefaili enda tekstis. Teine meetod tundub mulle mugavam - pole eriti lahe nõuda, et keegi käivitaks teie skripti teatud parameetriga.

Seda öeldes saaks eelmise "vale" näite parandada järgmiselt:

setlocal enableddelayedexpansion

if "%BUILDMODE%" == "silumine" (

Echo INFO: silumisrežiimi keskkonna seadistamine

Määrake OPTFLAGS=/Od

Määra CCFLAGS=!OPTFLAGS! /MDd /Z7

) muidu (

Echo INFO: vabastamisrežiimi keskkonna seadistamine

Määra OPTFLAGS=/O2

Määra CCFLAGS=!OPTFLAGS! /MD

Nüüd on see peaaegu täisväärtuslik kui-siis-muidu plokk. Peaaegu, sest kui kohtate mõnes kajakäskluses sulgevat sulgu, peate selle vältima märgiga ^, muidu läheb parser segadusse...

Kuid igal juhul on see palju parem kui meeletu hulk silte ja üleminekuid.

Funktsioonid

Kas bat-failis on võimalik funktsiooni luua? Jah, sa saad. Pealegi on see mõnikord isegi vajalik. Tõsi, neid võib tinglikult funktsioonideks nimetada.

Kõnekäsklusel on spetsiaalne süntaks, mis võimaldab minna samas nahkhiirefailis olevale märgile, jättes meelde koha, kust see kõne tehti:

call:label argumendid

Funktsioon tagastatakse käsuga:

välju /b [valikuline tagastuskood]

Klahv /b on siin väga oluline: ilma selleta väljute mitte funktsioonist, vaid skriptist üldiselt.

Üksikasjade vaatamiseks tippige käsureale:

helistama/?

väljuda /?

Huvitaval kombel toetab selle süntaksiga kõnekäsk rekursiivseid kõnesid muutujaargumentide %0–%9 jaoks uue kaadri automaatse loomisega. Mõnikord võib see olla kasulik. Siin on klassikaline näide rekursiivsest faktoriaalarvutusest käsukeeles:

@kaja väljas

call:factorial %1

kaja % RESULT%

väljuda

rem Funktsioon faktoriaalväärtuse arvutamiseks

rem sisselogimine:

rem %1 Arv, mille jaoks soovite faktoriaali arvutada

rem Väljund:

rem %RESULT% Faktoriaalne väärtus

:faktoriaalne

kui % 1 == 0 (

Määra TULEMUS=1

Välju /b

kui % 1 == 1 (

Määra TULEMUS=1

Välju /b

määra /a PARAM=%1–1

call:factorial %PARAM%

määra /a TULEMUS=% 1 * % TULEMUS%

välju /b

Töö näide:

> faktoriaal.bat 10

3628800

Tagastusväärtuste kasutamine
(töötleb programmi väljumiskoodi)

Kui mis tahes programm oma töö lõpetab, tagastab see operatsioonisüsteemile oma lõpetamiskoodi. Eduka lõpetamise korral on tavaks tagastada null, vastasel juhul veakood. Mõnikord, õigemini sageli, tagastab programm "tahtlikult" nullist erineva väärtuse, nii et selle toimimise mõningaid üksikasju saab partiifailis "õppida". Näiteks tagastab programm vajutatud klahvi koodi ja .bat fail teeb selle põhjal erinevaid toiminguid.

Kuidas saab partiifail tuvastada käivitatud programmi väljumiskoodi? Selleks on ette nähtud võtmemuutuja ERRORLEVEL.

Näide veatasemetega pakifailist:

@ECHO VÄLJAS

REM Käivitage programm prg1.exe

PRG1.EXE

REM-i lõpukoodi analüüs

KUI VERATASE 2 MINGE FAIL EI LEITUD

KUI VERATASE 1, MINGE WRITEERROR

KUI VERATASE 0, MINGE VÄLJU

MINGE ONEEXIT

:FAILI EI LEITUD

ECHO viga! Faili ei leitud!

MINGE ONEEXIT

:WRITEERROR

ECHO salvestusviga!

MINGE ONEEXIT

:EXITOK

ECHO Programm viidi edukalt lõpule.

MINGE ONEEXIT

:ONEEXIT

Pange tähele, et väljumiskoodi analüüs ei alga nullist, vaid maksimaalsest võimalikust väärtusest. Fakt on see, et selline kontroll tähendab: "kui veatase on väärtusest suurem või sellega võrdne, siis ...". See tähendab, et kui kontrollime nullist alustades, on esimesel real kõik väärtused tõesed, mis on vale.

See on seda tüüpi programmide kõige levinum viga.

Bat failid on tekstidokumendid, mis sisaldavad järjestikku täidetavate käskude (juhiste) loendit. Need võivad olla nii lihtsad, et tavakasutaja saab neid kasutada. Tänases teemas vaatleme, mis on partiifail, kuidas luua nahkhiirefaili opsüsteemides Windows 7, 8 ja kaaluge ka pakkfaili näidet.

Süsteemiadministraatorid (edasijõudnud kasutajad) on bat-failide kasulikkusest hästi kursis, kuid tavakasutajad pole nendega tuttavad, neid hirmutab koodi struktuur ja selle skripti käitamine. See on kahetsusväärne, sest paljud inimesed kardavad kasutada võimsat tööriista rutiinsete ja korduvate toimingute tegemiseks. Nahkhiirefailid võivad olla keerulised, nõuavad professionaalseid programmeerimisoskusi või lihtsad.

Kehafail sisaldab ühte või mitut järjestikku käivitatavat käsurida. Bat-failidel on laiend (bat või cmd) ja neid käivitatakse käsutõlgendi liidese kaudu. Kõiki käske saab sisestada cmd-sse, kuid iga kord, kui Windows 7, 8 käsurea helistamine ja koodi kirjutamine on vaevarikas, on nahkhiirefaili loomine lihtsam.

Bat faili loomine

Pakkfaili loomiseks vajate tekstiredaktorit (notepad, notepad++) ja bat-käskude loendit. Vaadake allolevat ligikaudset algoritmi.

1. Looge laiendiga txt tekstidokument. Paremklõpsake File Exploreri tühjal alal või muus kohas. Hõljutage kursorit "loo" kohal, seejärel valige alammenüüst "tekstdokument". Andke sellele nimi, näiteks batnik.

2. Laadige alla notepad++ ja installige see. Avage notepad++ fail batnik.txt, valige "kodeeringud", hõljutage kursorit "kodeeringud", "Kirillitsa", klõpsake OEM 866. Tehke seda sammu, kui kasutate skriptis venekeelsete sõnade (selgituste) väljundit, vastasel juhul näete nõme keel (kehtivad tähemärgid). Järgmisena kirjutage käsud üles. Näiteks kopeerige see tekst:

@kaja väljas
kaja Tere – nahkhiirefaili test
paus
kataloog c:windows
paus

4. Topeltklõpsake faili batnik.bat käivitamiseks käskude jada täitmiseks. Pärast bat-faili käivitamist suletakse see automaatselt.

Võite ka käivitada notepad, vajutada Win + R, sisestada reale notepad ja klõpsata sisestusklahvi. Pärast koodi sisestamist klõpsake "fail" ja seejärel "salvesta kui". Aknas määrake salvestustee, failinimi nahkhiire laiendiga ja klõpsake nuppu "Salvesta". Kui kasutate vene tähemärke, tehke sama koodiga Notepad++, et muuta kodeering (samm 2).

Bat faili näide

Nüüd vaatame nahkhiirefaili loomine opsüsteemides Windows 7, 8, mis annab teavet võrgu kohta, kontrollib Interneti-ühendust ja näitab selgelt partiifailide toimimist. Looge nahkhiire fail ja kirjutage need read.

KAJA VÄLJAS
:: koristaja.
ECHO ühenduse teave.
:: kuvab ekraanil teksti, mis on pärast teenindussõna ECHO.
IPCONFIG /KÕIK
:: Prindib teabe kõigi võrguühenduste kohta.
PAUS
:: Peatab skripti, et saaksite vaadata võrguteavet.
PING yandex.ru
:: Ping, Interneti-ühenduse olemasolu (puudumise) kontrollimine
ECHO operatsioon lõpetatud. Vajutage sisestusklahvi!
:: Kuvab pärast ECHO-d sõnad, mis näitavad PING-i täitmist.
PAUS
:: See viimane käsk on kirjutatud ühenduse teabe nägemiseks. Kui seda poleks, siis partiiskript peatuks ja aken sulguks.

Tegelikult on Internetis treenimiseks ja allalaadimiseks tohutult palju näiteid baht-failidest. Peate lihtsalt uurima süntaksit ja käske, et luua oma vajadustele vastav partiifail. Loodan, et saate aru, miks on vaja pakkfaile ja kuidas luua nahkhiirefaili operatsioonisüsteemis Windows 7.8.