Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ
  • në shtëpi
  • Programet
  • Komandat e skedarit Bat (Windows). Si mund të krijoj një skedar me një shtrirje bat? Për çfarë janë këto skedarë?

Komandat e skedarit Bat (Windows). Si mund të krijoj një skedar me një shtrirje bat? Për çfarë janë këto skedarë?

Në këtë artikull:

  • Përcaktimi i variablave
  • Variablat e linjës së komandës (parametrat për thirrjen e një skedari bat)
  • Deklarata e kushtit IF
  • Funksione
  • Përdorimi i vlerave të kthimit (Përpunimi i kodit të daljes)

Përcaktimi i variablave

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

Deklarata SET është një zgjerim i opsioneve të disponueshme për sistemin operativ. Ai specifikon një ndryshore, vlera e së cilës zëvendësohet me emrin e saj sa herë që ai emër përdoret midis shenjave të përqindjes. Pra, nëse jepet (ndryshorja kërkohet nga shumë lojëra që përdorin një kartë zanore kompjuteri):

SET BLASTER = A220 I5 D1 P330

atëherë kur përdorni ndërtimin e mëposhtëm në një skedar grupi:

ECHO% BLASTER%

në ekran do të shfaqet "A220 I5 D1 P330". Variablat e përcaktuar me deklaratën SET quhen variabla mjedisore dhe janë të dukshme pas ekzekutimit derisa DOS të riniset (përveç nëse ndryshohet manualisht në memorie). Kjo do të thotë, mund të përdoret nga një skedar grupi ose program pas një pune në një tjetër. Më e famshmja është ndryshorja PATH, e cila është një grup shtigjesh për gjetjen e shpejtë të skedarëve. Është vendosur në skedarin autoexec.bat.

Variablat e linjës së komandës
(parametrat e thirrjes së skedarit bat)

%<цифра 0-9>

Si në çdo gjuhë, në gjuhën e skedarëve të grupit është e mundur të përdoren ndryshoret e marra si parametra të një skedari bat.

Mund të ketë 10 variabla të pavarur ekzistues njëkohësisht. Kjo nuk mjafton për të shkruar programe komplekse, megjithëse 3-4 shpesh janë të mjaftueshme për punë normale. Vlera e ndryshores është e barabartë me vlerën e parametrit përkatës nga linja e komandës. Ndryshorja% 0 do të përmbajë emrin e skedarit .bat dhe, nëse e keni specifikuar, shtegun drejt tij. Kjo do të thotë, nëse ekzekutoni skedarin abc.bat me parametrat e mëposhtëm:

abc.bat a bc def

atëherë ndryshorja% 0 do të përmbajë vlerën abc.bat,% 1 do të përmbajë vlerën a,% 2 do të përmbajë bc dhe% 3 do të përmbajë def. Kjo veçori përdoret gjerësisht për të krijuar skedarë gjenerikë të grupeve kur kemi të bëjmë me operacione të përsëritura.

Ju mund të përdorni komandën SHIFT për të marrë më shumë se 10 variabla nga linja e komandës.

Komanda SHIFT ju lejon të përdorni më shumë se 10 parametra të linjës komanduese.Megjithatë, parametrat e mëparshëm humbasin në përputhje me rrethanat. Me fjalë të tjera, komanda SHIFT zhvendos të gjitha vlerat e variablave një hap në të majtë. Kjo do të thotë, ndryshorja% 0 do të përmbajë vlerën e përmbajtur më parë në ndryshoren% 1, dhe ndryshorja% 1 do të përmbajë vlerën e ndryshores% 2 përpara zhvendosjes. Sidoqoftë, ky operacion është i pakthyeshëm, domethënë është e pamundur të zhvendosen variablat prapa.

Deklarata e kushtit IF

Për fat të mirë, guaska cmd.exe në Windows 2000 moderne dhe më vonë mbështet blloqet e komandave në konstruktet e degëve, gjë që heq nevojën për IF të etiketuara. Blloqet e komandave janë të mbyllura në kllapa. Duket kështu (duke imituar stilin e dhëmbëzimit C / C ++):

nese kusht (

Komandat Rem të degës 'atëherë'

Rem...

) tjeter (

Komandat Rem të degës 'tjetër'

Rem...

Një shembull konkret i përdorimit:

@echo fikur

cakto BUILDMODE =% 1

nëse "% BUILDMODE%" == "" (

Echo FAIL: Kërkohet argumenti ^ (- korrigjim, --lësho ^)

Dalje / b 1

rem Hiq të gjitha vizat nga argumenti për të thjeshtuar përpunimin

cakto BUILDMODE =% BUILDMODE: - =%

nëse "% BUILDMODE%" == "debug" (

Vendosni CCFLAGS = / Od / MDd / Z7

) tjeter (

Vendos CCFLAGS = / O2 / MD

Sipas mendimit tim, kjo tashmë është mjaft e mundur për të jetuar. Por, si gjithmonë, jeta nuk është aq e lehtë sa duket. Ka një problem. Variablat e përdorur në blloqet atëherë dhe else zgjerohen përpara se të fillojë ekzekutimi i atyre blloqeve, dhe jo gjatë ekzekutimit. Në shembullin e mësipërm, kjo nuk shkakton ndonjë problem, por në vijim do të shkaktojë:

nëse "% BUILDMODE%" == "debug" (

Echo INFO: Cakto modalitetin e korrigjimit të mjedisit

Vendos OPTFLAGS = / Od

Cakto CCFLAGS =% OPTFLAGS% / MDd / Z7

) tjeter (

Echo INFO: Cakto modalitetin e lëshimit të mjedisit

Vendos OPTFLAGS = / O2

Cakto CCFLAGS =% OPTFLAGS% / MD

Kapja është se në të dy blloqet, zëvendësimi i ndryshores OPTFLAGS do të ndodhë përpara se të ndryshohet gjatë ekzekutimit të këtij blloku. Prandaj, vlera që kishte OPTFLAGS në momentin kur filloi ekzekutimi i këtij blloku if do të zëvendësohet në CCFLAGS.

Ky problem zgjidhet duke përdorur zgjerimin e ndryshores dembel. Variablat e mbyllur! ...! në vend të% ...%, ato do të zgjerohen në vlerat e tyre vetëm në momentin e përdorimit të drejtpërdrejtë. Ky modalitet është i çaktivizuar si parazgjedhje. Mund ta aktivizoni ose duke përdorur çelësin / V: ON kur telefononi cmd.exe, ose duke përdorur komandën:

në tekstin e vetë skedarit bat. Mënyra e dytë më duket më e përshtatshme - nuk është shumë interesante të kërkosh që dikush të ekzekutojë skriptin tënd me një parametër të caktuar.

Me këtë thënë, shembulli i mëparshëm "i gabuar" mund të korrigjohet si kjo:

setlocal aktivizimi i vonuar zgjerimi

nëse "% BUILDMODE%" == "debug" (

Echo INFO: Vendosja e mjedisit të modalitetit të korrigjimit

Vendos OPTFLAGS = / Od

Vendos CCFLAGS = OPTFLAGS! / MDd / Z7

) tjeter (

Echo INFO: Konfigurimi i mjedisit të modalitetit të lëshimit

Vendos OPTFLAGS = / O2

Vendos CCFLAGS = OPTFLAGS! / MD

Tani është pothuajse një bllok i plotë nëse-atëherë-tjetër. Pothuajse, sepse nëse hasni në një kllapa mbyllëse në një nga komandat echo, atëherë duhet t'i ikni me ^, përndryshe analizuesi ngatërrohet ...

Por në çdo rast, kjo është shumë më mirë se sasia e çmendur e etiketimeve dhe tranzicioneve.

Funksione

A është e mundur të krijohet një funksion në një skedar bat? Po ti mundesh. Për më tepër, ndonjëherë është edhe e nevojshme. Vërtetë, këto mund të quhen funksione me kusht.

Ekziston një sintaksë e veçantë për komandën e thirrjes, e cila ju lejon të hidheni te një etiketë në të njëjtin skedar bat, duke kujtuar vendin nga i cili është bërë kjo thirrje:

thirrje: etiketoj argumentet

Kthimi nga funksioni kryhet nga komanda:

dalje / b [kodi opsional i kthimit]

Ndërprerësi / b është shumë i rëndësishëm këtu: pa të, dalja nuk do të bëhet nga funksioni, por nga skenari në përgjithësi.

Për detaje, shkruani në vijën e komandës:

telefononi /?

dalje /?

Është interesante se komanda e thirrjes me këtë sintaksë mbështet thirrjet rekursive me krijimin automatik të një kornize të re për argumentet e ndryshueshme% 0-% 9. Kjo mund të jetë e dobishme ndonjëherë. Këtu është një shembull klasik i llogaritjes faktoriale rekursive në gjuhën e komandës:

@echo fikur

thirrja: faktoriale% 1

jehona% REZULTATE%

dalje

Funksioni rem për llogaritjen e vlerës faktoriale

rem Hyrja:

rem% 1 Numri për të cilin llogaritet faktoriali

rem Output:

rem% REZULTATE% Vlera faktoriale

: faktorial

nëse% 1 == 0 (

Vendos REZULTATE = 1

Dalje / b

nëse% 1 == 1 (

Vendos REZULTATE = 1

Dalje / b

set / a PARAM =% 1 - 1

thirrje: faktorial% PARAM%

set / a REZULTATE =% 1 *% REZULTATE%

dalje / b

Shembull i punës:

> faktorial.bat 10

3628800

Përdorimi i vlerave të kthimit
(përpunimi i kodit të përfundimit të programit)

Çdo program, pas përfundimit të punës së tij, kthen kodin e tij të daljes në sistemin operativ. Pranohet të kthehet zero në sukses, përndryshe - një kod gabimi. Ndonjëherë, ose më mirë shpesh, programi "qëllimisht" kthen një vlerë jozero, kështu që në skedarin e grupit ishte e mundur të "zbuloheshin" disa nga detajet e funksionimit të tij. Për shembull, programi kthen kodin e tastit të shtypur dhe skedari bat kryen veprime të ndryshme mbi të.

Si mund të zbulojë një skedar grupi kodin e daljes së një programi të ekzekutuar? Për këtë është dhënë variabli kyç ERRORLEVEL.

Një shembull i një skedari grumbull me nivele gabimi:

@ECHO OFF

REM Drejtoni programin prg1.exe

PRG1.EXE

Analiza e kodit të daljes REM

NËSE GABIM NIVELI 2 SHKO TË FILENOT FUND

NËSE NIVELI I GABIMIT 1 SHKO SHKRIMI I SHKRIMIT

NËSE GABIM NIVEL 0 SHKO TË EXITOK

SHKO ONEXIT

: FILENOTFUND

Gabim ECHO! Skedari nuk u gjet!

SHKO ONEXIT

: SHKRIMTAR

ECHO Gabim shkrimi!

SHKO ONEXIT

: EXITOK

ECHO Programi përfundoi me sukses.

SHKO ONEXIT

: ONEXIT

Ju lutemi vini re se analiza e kodit të plotësimit nuk fillon nga zero, por nga vlera maksimale e mundshme. Fakti është se një kontroll i tillë do të thotë: "nëse niveli i gabimit është më i madh ose i barabartë me vlerën, atëherë ...". Kjo do të thotë, nëse kontrollojmë duke filluar nga zero, çdo vlerë do të jetë e vërtetë në rreshtin e parë, gjë që nuk është e vërtetë.

Ky është gabimi më i zakonshëm në këtë lloj softueri.

Skedarët BAT janë dokumente tekstuale me një shtrirje të veçantë. Komandat shkruhen në të për ekzekutimin e tyre të mëvonshëm në vijën e komandës. Duke ekzekutuar skedarin, ju aktivizoni programin CMD, ai lexon komandat që ekzekutohen në mënyrë sekuenciale. Në këtë mënyrë, ju mund ta bëni më të lehtë punën me vijën e komandës, duke ruajtur rendin e dëshiruar. Sigurisht, ju mund t'i futni të gjitha komandat menjëherë në vijën e komandës me dorë, megjithatë, nëse keni nevojë të përsërisni të njëjtat operacione, është shumë më e përshtatshme ta bëni këtë duke filluar leximin automatik të listës së shkruar në formën e një shkop. dokument. Ky opsion është gjithashtu praktik dhe i përshtatshëm në atë që më pas mund të ndryshoni rendin, të plotësoni proceset e reja që ju nevojiten dhe të fshini ato të panevojshme.

BAT ndihmon në automatizimin e proceseve: nisjen e programeve, arkivimin, rezervimin. Prandaj, është e dobishme të dini se si të krijoni vetë një skedar bat, ta korrigjoni dhe plotësoni atë.

Puna me shkop përmes Notepad

Algoritmi i krijimit

Procesi i punës përmes Notepad nuk është aspak i ndërlikuar. Nëse nuk e keni bërë kurrë më parë këtë, atëherë mund ta bëni mjaft mirë duke mësuar se si të krijoni një skedar bat dhe të plotësoni komandat në të. Le të fillojmë duke krijuar. Këtu, vazhdoni në mënyrë rigoroze sipas algoritmit:

  1. Krijoni një dokument teksti, fillimisht do ta merrni me shtesën txt. Ju mund ta kryeni këtë operacion në disa mënyra, disa varen nga niveli i Windows që keni instaluar:
    • Në dosjen që keni zgjedhur, kliko me të djathtën në fushë, do të hapet një meny, aty zgjedhim "E re" - "Dokument teksti";
    • Hapni "Notepad" përmes "Start" duke zgjedhur "Të gjitha programet" - "Accessories" - "Notepad" (për Windows 7);
    • Në versionet e mëvonshme (pas 7) të Windows, gjithashtu mund të hapni Notepad përmes "Start": kaloni në "Të gjitha aplikacionet", pastaj "Standard" - "Windows" dhe atje zgjidhni tashmë "Notepad" në listë;
    • Thirrni dritaren e komandës së sistemit duke përdorur kombinimin Win + R, shkruani "notepad" në rresht, klikoni "Ok".
  2. Shkruani tekstin e komandave. Për një provë, shkruani, për shembull, "START taskmgr.exe" - nisja e menaxherit të detyrave. "START" i thotë interpretuesit të komandës të nisë një program, më pas tregohet ekzekutuesi i programit.
  3. Specifikoni rrugën ku të ruhet dokumenti i krijuar.
  4. Specifikoni në dritaren e ruajtjes:
    • në rreshtin "Lloji" - "Të gjithë skedarët";
    • në rreshtin "Emri", shkruani emrin dhe shtrirjen e shkop, duke e shtuar pas emrit, duke vendosur një pikë midis emrit dhe shtesës, për shembull, "file.bat".
  5. Klikoni në "Ruaj".

Një skedar grupi me një shtesë .bat do të shfaqet në dosjen që specifikuat.

Ekzekutimi i skedarit

Është më e lehtë të hapësh një skedar bat duke klikuar dy herë mbi të me miun. Mënyra e dytë është të ekzekutoni nga linja e komandës: shkruani adresën ku ndodhet dokumenti me zgjerimin .bat që keni ruajtur.

Redaktimi

Nëse dëshironi të ndryshoni dokumentin - shtoni komanda në skedarin bat, fshini disa prej tyre, futni një program tjetër për punën e mëvonshme me të - nuk është e vështirë ta bëni këtë. Hapni dokumentin me një redaktues teksti. Është i përshtatshëm për ta bërë këtë duke klikuar me të djathtën në skedarin bat, në menynë që hapet, zgjidhni "Ndrysho". Do të fillojë "Notepad" - atje mund të modifikoni komanda, të ndryshoni përmbajtjen, të bëni shtesa.

Aplikimi i Dr. Batcher

Për një fillestar që sapo ka filluar të punojë me interpretuesin e komandës, i cili e përdor atë mjaft rrallë, Notepad është i mjaftueshëm. Nëse dëshironi të arrini një nivel më të lartë profesional, ju rekomandojmë të përdorni programin Dr. Batcher. Në Dr. Batcher, ju mund të numëroni faqe, ka mbështetje për faqeshënuesit, një listë e komandave të sistemit të përdorura në bat, komandat e futura theksohen.

Krijimi i dokumentit

Algoritmi është i thjeshtë, nuk kërkon aftësi dhe profesionalizëm të veçantë. Pas shkarkimit të programit, mund të bëni shpejt gjithçka që ju nevojitet.

Filloni Dr. Batcher.

  1. Hapni një faqe të re: "File" - "E re" ose klikoni në ikonën e fletës bosh nën menunë "File".
  2. Në kutinë e dialogut, klikoni në "Empty Batch File".
  3. Formohet një dritare programi, ku do të ketë funksione për të punuar me shkop.
  4. Pasi të keni futur tekstin e dëshiruar, ruani.

Redaktimi

Nëse keni nevojë të ndryshoni skedarin bat, në Dr. Batcher kjo bëhet në disa mënyra:

  1. Klikoni në ikonën me butonin e djathtë, zgjidhni "Edit with Dr. Batcher" nga menyja.
  2. Nis Batcher. Hapni skedarin e kërkuar bat duke ndjekur shtegun:
  • "Dosja";
  • "Hapur";
  • specifikoni rrugën drejt dokumentit;
  • "Hapur".

Pasi të kaloni një nga shtigjet e propozuara, do të hapni programin, dritarja do të përmbajë tekst ku mund të bëni rregullime, të ndryshoni komandat, t'i plotësoni ato, të fshini ato të panevojshme.

Skedari bat është i dobishëm kur ju duhet të automatizoni detyrat në Windows. Sidomos nëse është e nevojshme të kryhen veprime në një algoritëm të caktuar disa herë (në mënyrë periodike ose me radhë). Kjo zakonisht kërkohet kur krijohet një sistem drejtorish, riemërtimi i skedarëve në masë dhe operacione të tjera të thjeshta dhe më komplekse. Pasi të keni ruajtur rendin e veprimeve, ju mund të filloni procesin në çdo kohë shpejt dhe pa humbje të panevojshme kohe për futjen manuale të komandave, ta përsërisni atë për programe të ndryshme, duke shtuar vetëm emrin e tyre në tekstin e përfunduar. Rekomandimet se si të krijoni një skedar bat, të përshkruara më sipër, do t'ju ndihmojnë jo vetëm t'i krijoni ato vetë, por edhe t'i modifikoni ato.

Çdokush mund të shkruajë skedarë bat!

Procesori i komandës

Shumë sisteme operative, duke përfshirë ato të zhvilluara nga Microsoft, përfshijnë një procesor komandimi. Ky është emri i një programi që fillon ekzekutimin e të gjitha llojeve të veprimeve në përgjigje të komandave të futura nga përdoruesi nga tastiera. Në thelb, këto veprime konsistojnë në nisjen e programeve të nevojshme me parametra të caktuar. Por jo vetëm; më tej do të shohim se disa komanda ekzekutohen drejtpërdrejt nga shell. Në thelb, këto janë komandat që shërbejnë për të kontrolluar kontekstin dhe sekuencën e ekzekutimit të komandës. Megjithatë, ne nuk do të mendojmë shumë thellë për natyrën e komandave, të paktën jo pa nevojë. Më e rëndësishmja, çdo program që teknikisht është i mundur të ekzekutohet nga linja e komandës trajtohet si komandë nga shell. Nuk bën dallim midis komandave "native" të integruara fillimisht në sistemin operativ dhe programeve që ishin instaluar në krye të tij.

Për të nisur procesorin e komandës:

    Klikoni në butonin Filloni... Menyja kryesore do të shfaqet.

    Zgjidhni Run nga menyja kryesore. Do të shfaqet një kuti dialogu Nisja e programit.

    Në kutinë Open, futni vargun cmd.

    Klikoni në butonin Ne rregull... Do të shfaqet një dritare shell.

Linja e komandës dhe komandat

Dritarja e guaskës duket e zymtë në formën e saj origjinale dhe nuk është shumë e përshtatshme për shumicën e njerëzve të punojnë me të. Është shumë më e lehtë të përdorësh menaxherët e skedarëve të stilit Norton Commander. Ato ofrojnë një mjet për lundrim të shpejtë nëpër sistemin e skedarëve dhe një afat kohor për futjen e komandave.

Për të futur komandën:

    Shkruani tekstin e komandës në vijën e komandës.

    Shtypni tastin Hyni.

Procesori i komandës dhe komandat e sistemit operativ përshkruhen në dokumentacionin e sistemit operativ. Ky dokumentacion është pjesërisht i përfshirë në vetë sistemin operativ. Për të hyrë në të, përdorni komandën ndihmë... Kjo komandë shfaq një listë të komandave të disponueshme në ekran. Për të marrë një përshkrim të një komande specifike, si parametër, komanda ndihmë duhet të tregohet emri i saj. Linja e komandës e paraqitur në listën e mëposhtme shfaq përshkrimin e komandës për.

Nëse jeni përpjekur të futni komandën ndihmë, me siguri e keni vënë re se rezultati i punës së saj (i ashtuquajturi çështje) nuk përshtatet në një ekran. I njëjti problem ndodh me tekstin e përshkrimit të komandës për... Lajmi i mirë është se dalja mund të ridrejtohet në një skedar. Linja e komandës e treguar në listën e mëposhtme gjeneron skedarin komandat.txt që përmban një listë të të gjitha komandave MS-DOS.

ndihmë> komandat.txt

Për të gjeneruar një skedar me një përshkrim komande për, ju duhet të jepni një komandë të tillë (mund të bëni emrin e skedarit të daljes çdo gjë që ju pëlqen).

ndihmë për> for.txt

Në total, sistemet operative moderne të korporatës Microsoft kanë pak më pak se 80 komanda, dhe është e pamundur t'i përshkruani ato në një artikull. Këtu mund të përmendim vetëm disa komanda të dobishme për automatizimin e përpunimit të skedarëve dhe të tregojmë se si t'i përdorim ato. Këto komanda do të përdoren në shembujt e mëposhtëm. Ju gjithmonë mund t'i sqaroni detajet me komandë ndihmë ose në referencë.

kopje- kopjimi i një ose më shumë skedarëve;

del- fshirja e një ose më shumë skedarëve;

lëvizin- zhvendosja e një ose më shumë skedarëve ose drejtorive;

riemërto(shkurtuar ren) - riemërtoni një ose më shumë skedarë ose drejtori;

xkopje- kopjimi i një peme të nëndirektorive;

mkdir(shkurtuar md) - krijimi i një drejtorie;

rmdir(shkurtuar rd) - fshirja e një drejtorie.

Një nga rregullat e përgjithshme të sintaksës së komandës MS-DOS është që kur specifikoni parametrat, fillimisht specifikoni burimin dhe më pas rezultatin. Për shembull, nëse duam të zhvendosim skedarin birrë.txt nga katalogu kuti për të kataloguar tabela, duhet të fusim komandën e treguar në listën e mëposhtme.

kuti lëvizëse \ tabela birrë.txt

Së pari, çfarë të lëvizni, pastaj ku të lëvizni.

Nëse duam të riemërtojmë skedarin lena.txt për të paraqitur natasha.txt, atëherë komanda duhet të shkruhet siç tregohet më poshtë.

ren lena.txt natasha.txt

Së pari çfarë të riemërtoni, pastaj çfarë të riemërtoni.

Drejtoria aktuale. Rrugë absolute dhe relative

Kur punoni me komandat e skedarëve, koncepti i drejtorisë aktuale bëhet jashtëzakonisht i rëndësishëm. Fakti është se kur specifikojmë një skedar si një parametër komandimi, ne përdorim gjithmonë një nga dy mënyrat e mundshme për t'i treguar ato: ose një shteg absolut ose një shteg relative. Në shtegun e plotë, ne tregojmë gjithçka, për shembull, duke filluar me diskun (ose emrin e rrjetit të kompjuterit). d: \ misha \ kuti \ birra.txt... Cilado dosje që është aktuale në momentin kur futet komanda, shtegu i plotë do të korrespondojë me të njëjtin skedar. Për një rrugë relative, direktoria aktuale është pika e fillimit. Rasti më i thjeshtë për një shteg relativ është emri i skedarit. Në kontekstin e ekzekutimit të komandës, do të thotë një skedar me atë emër që ndodhet në drejtorinë aktuale.

Ekziston një hyrje e kushtëzuar për të shkruar shtegun përkatës në drejtorinë aktuale . (pikë). Për të shkruar shtegun përkatës në drejtorinë që përmban direktoriumin aktual, ekziston një hyrje e kushtëzuar .. (dy pika). Komanda e paraqitur në listën e mëposhtme kopjon të gjithë skedarët nga drejtoria aktuale në drejtori fqinji ndodhet pranë tij.

kopje *. *. \ fqinj

Skedarët e komandës

Deri më tani, kur jepnim shembuj, supozonim se çdo herë po futnim komanda manualisht. Kur përpunoni një numër të madh skedarësh ose ekzekutoni në mënyrë sistematike të njëjtat komanda, kjo bëhet e rëndë. Prandaj, procesori i komandës ofron mundësinë për të ekzekutuar skedarët e komandës. Një skedar grumbull është një skedar teksti që përmban komanda (ose të paktën një komandë). Një shembull i një skedari grupor është paraqitur në listën e mëposhtme. Mundohuni të merrni me mend se çfarë bën ky skedar grumbull.

ndihmë kopje> copy.ndihmë

ndihmë lëviz> lëviz.ndihmoj

lëviz * .ndihmë msdos-help

Nëse qëllimi i këtij skedari mbetet një mister për ju, atëherë përpiquni ta krijoni dhe ekzekutoni atë. Është e zakonshme që skedarëve të grupit t'u jepet zgjerimi lakuriq nate... Me të, skedarët e këtij lloji njihen nga procesori i komandës. Ky skedar mund të emërtohet për shembull make-ndihmë.bat.

Për të ekzekutuar një skedar grupi:

    Shkruani emrin e saj si komandë. Pas kësaj, skedari i grupit do të ekzekutohet.

Në një skedar grupi, çdo komandë zë një rresht. Më saktësisht, ekziston një mënyrë për të vendosur një komandë në disa rreshta të njëpasnjëshëm, për këtë, menjëherë para çdo furnizimi të rreshtit, vendosni karakterin "cover". ^ ... (Çdo kopertinë duhet të jetë karakteri i fundit në rreshtin e tij; nuk duhet të ketë hapësira ose skeda pas tij). Një shembull i një komande të tillë është paraqitur në listën e mëposhtme.

nëse ekziston disser.txt ^

kopjoni disser.txt ^

d: \ shkenca \ letrat \ draftet \ burimet

Por për hir të thjeshtësisë, që të mos bëjmë rezerva çdo herë, do të supozojmë se në një farë kuptimi kjo është një linjë e gjatë "logjike".

Kur ekzekutohet skedari i komandës, procesori i komandës skanon skedarin e komandës nga lart poshtë nga rreshti i parë deri tek i fundit dhe i ekzekuton komandat në rendin në të cilin i gjen. Ai i kryen ato në tërësi sikur t'i kemi futur me dorë secilën prej tyre. Në përgjithësi, sepse disa komanda sillen paksa ndryshe kur futen manualisht dhe kur ekzekutohen nga një skedar batch.

Duke parë përpara, le të themi se, nëse është e nevojshme, sekuenca e ekzekutimit të komandës mund të ndryshohet me ndihmën e komandave të kontrollit (të cilat mund të shoqërohen me një nevojë të tillë, një pyetje më vete).

Mos e ngatërroni direktorinë aktuale me drejtorinë në të cilën ndodhet skedari i grupit që po ekzekutohet. Supozoni se drejtoria aktuale është puna, ai përmban drejtorinë mjetet dhe direktoria e mjeteve përmban skedarë të grupit. Ju filloni njërën prej tyre me komandën vegla \ collect-images.bat... Pra, "nga pikëpamja" e këtij skedari grumbull, drejtoria aktuale do të jetë ende puna, por jo mjetet.

Komentimi i skedarit të grupit dhe lëshimi i tij. Komandat Echo dhe rem

Një skedar grumbull është në thelb një program i shkruar në gjuhën e guaskës së sistemit operativ. Teksti i programit supozohet të jepet me komente në mënyrë që, duke iu rikthyer pak kohë më vonë, të mos kujtohet me dhimbje se për çfarë është ky program dhe si është rregulluar.

Sistemi i komandës MS-DOS ofron një komandë për komentim rem... Kjo është një komandë bedel që nuk nënkupton ndonjë veprim, por ju lejon të shkruani tekst arbitrar në rreshtin pas emrit tuaj. Për më tepër, procesori i komandës nuk e percepton atë si një gabim sintaksor. Një shembull i formatimit të një skedari grupor me komente është paraqitur në listën e mëposhtme.

rem **************************************************** * ***

rem Gjenerimi i skedarëve të ndihmës

ndihmë kopje> copy.ndihmë

ndihmë lëviz> lëviz.ndihmoj

lëviz * .ndihmë msdos-help

Vini re linjat bosh që thyejnë skedarin e grupit në "paragrafë". Kjo teknikë e thjeshtë e bën skedarin e grupit më të lexueshëm.

Gjatë ekzekutimit të skedarit të grupit të mësipërm, të gjitha komandat do të shfaqen në ekran ndërsa ekzekutohen, gjë që nuk është gjithmonë e përshtatshme. Lëshimi i komandave mund të çaktivizohet duke përdorur komandën @echo fikur... Simboli “qen” përballë komandës jehonë do të thotë që vetë kjo komandë duhet të ekzekutohet në modalitetin "silent". Ne gjithashtu mund të mos përdorim komandën jehonë jashtë, dhe vendosni një "qen" përpara çdo ekipi.

Në shumë raste, kërkohet që skedari i komandës të nxjerrë mesazhe të caktuara në ekran (ose në një skedar). Në disa raste, këto mund të jenë mesazhe gabimi, në të tjera, mesazhe informative që i shpjegojnë përdoruesit e skedarit të grupit se çfarë po ndodh në këtë moment, ndonjëherë ne formojmë një skedar tjetër të dobishëm me skedarin e grupit. E njëjta komandë echo përdoret për të shfaqur mesazhet. Teksti i mesazhit të shfaqur i kalohet atij si parametër. Lista e skedarit të përmirësuar të grupit është paraqitur më poshtë.

rem **************************************************** * ***

rem Gjenerimi i skedarëve ndihmës për komandat e kopjimit dhe lëvizjes

rem **************************************************** * ***

@echo Gjenerimi i skedarëve të ndihmës. Një sekondë ...

rem Gjenerimi i skedarëve të ndihmës

ndihmë kopje> copy.ndihmë

ndihmë lëviz> lëviz.ndihmoj

rem Krijoni një direktori për të ruajtur skedarët e ndihmës

rem Zhvendosni skedarët e ndihmës në drejtorinë e përgatitur

lëviz * .ndihmë msdos-help

jehonë U krye!

Kalimi i parametrave në skedarin e grupit

Supozoni se duam të krijojmë një skedar grupi që së pari gjeneron një ndihmë me një përshkrim të një komande të përcaktuar nga përdoruesi dhe më pas e ngarkon atë për ta parë në bllokun e shënimeve. Truku është t'i tregojmë në një farë mënyre se cila komandë na intereson këtë herë herën tjetër që të lëshohet skedari i grupit.

Për të zgjidhur këtë problem, sigurohet një mekanizëm i përpunimit të parametrave. Ajo funksionon mjaft thjesht. Nëse, gjatë fillimit të skedarit të grupit, përdoruesi specifikoi disa parametra, atëherë në tekstin e skedarit të grupit ne shënojmë të parën prej tyre me hyrjen %1 , hyrja e dytë %2 , hyrja e tretë %3 etj. Ne i përdorim këto emërtime në tekstin e skedarit të grupit në të njëjtën mënyrë si në fjalimin natyror me përemra.

Teksti i skedarit të komandës që zgjidh problemin tregohet në listën e mëposhtme. Kushtojini vëmendje komandës ndihmë... Parametri i parë i skedarit të grupit i kalohet atij si parametër i tij.

rem Ne formojmë një skedar me një përshkrim të komandës,

rem emri i të cilit kaloi sipas parametrit

ndihmë% 1> help.tmp

rem Ngarkoni skedarin e përshkrimit në redaktuesin e Notepad

ndihma e fletores.tmp

Supozoni se i kemi dhënë këtij skedari grupi emrin show-ndihmë.bat... Për të ngarkuar një përshkrim komande në bllokun e shënimeve, për shembull, dir, duhet të fusim komandën si më poshtë.

show-help.bat regji

Skedari i mëposhtëm i komandës krijon një direktori me emrin e specifikuar në parametrin e parë dhe shkruan një skedar me tekstin e përshkrimit të komandës të specifikuar në parametrin e dytë në të.

rem Shembull i skedarit të grupit me dy parametra

rem Krijoni një direktori me emrin e dhënë nga parametri i parë

rem Krijoni një skedar me një përshkrim komande në të,

rem e dhënë si parametër i dytë

ndihmë% 2>% 1 \% 2.ndihmë

Çfarë ndodh nëse përdoruesi, kur ekzekuton këtë skedar grupi, nuk specifikon dy, por katër parametra? Është në rregull, ata nuk do të ndërhyjnë me asgjë, thjesht nuk do të përdoren. Por çka nëse përdoruesi specifikon vetëm parametrin e parë? Parametri i dytë do të jetë bosh. Efekti do të jetë si më poshtë: skedari i grupit do të ekzekutohet, por sikur në vendin e shkrimit %2 nuk ka asgje. Komanda e ndihmës do të gjenerojë një listë të të gjitha komandave dhe do ta vendosë atë në një skedar me një emër bosh dhe shtesën .help. Nëse përdoruesi e ekzekuton këtë skedar pa specifikuar asnjë parametër, atëherë kur procesori i komandës përpiqet të ekzekutojë komandën md(mbani mend, synohet të krijohet një direktori), do të marrim një mesazh gabimi sintaksor, pasi komanda md duhet të ketë një parametër.

Kështu, përdorimi i parametrave krijon mundësi të mëdha, por mund t'i komplikojë ndjeshëm gjërat. Në mënyrë që skedari i komandës të funksionojë gjithmonë si duhet, është e nevojshme të kontrolloni korrektësinë e parametrave të specifikuar nga përdoruesi dhe t'i përgjigjeni disi të dhënave të dhëna jo të plota ose të pasakta. Ju, sigurisht, nuk mund ta bëni këtë, por një skedar grupi që funksionon gabimisht mund të shpërthejë zjarrin, veçanërisht nëse përfshin fshirjen ose mbishkrimin e të dhënave.

Variablat. Vendos komandën

Një ndryshore është një vlerë e emërtuar. Në tekstet e programimit, një variabël zakonisht krahasohet me një zarf me një emër të shkruar në të. Mund të vendosni diçka brenda zarfit, për shembull, një shumë të caktuar parash - kjo është vlera e saj. Ashtu si me zarfin, vlera e ndryshores mund të ndryshohet.

Për të deklaruar një variabël dhe në të njëjtën kohë për t'i caktuar një vlerë, përdorni komandën vendosur... Një shembull i shkrimit të kësaj komande është paraqitur në listën e mëposhtme.

Për të marrë vlerën e një ndryshoreje, vendoseni emrin e saj midis shenjave dy përqind, siç tregohet më poshtë.

Përpiluesi rem për skedarët e ndihmës në formatin CHM

vendos help_compiler = c: \ HTML Help Workshop \ hcc.exe

rem Projekti i skedarit ndihmës të modulit "Depo".

set store_hpj = help \ sources \ store \ store.hpj

rem Projekti i skedarit ndihmës të modulit "Shitjet".

set sales_hpj = help \ sources \ sales \ sales.hpj

rem Përpiloni skedarë ndihmës

% help_compiler%% store_hpj%

% help_compiler%% sales_hpj%

Ky listim tregon se si variablat janë të dobishëm.

Së pari, ata lejojnë në vend të një fragmenti të gjatë (për shembull, shtegun për përpiluesin e skedarëve të ndihmës) të përdorin një sinonim të shkurtër me të brenda skedarit të grupit. Të paktën, është i përshtatshëm.

Së dyti, ato lejojnë shmangien e përsëritjes në tekstin e skedarit të grupit të fragmenteve që mund të ndryshojnë në të ardhmen. Imagjinoni se kemi riinstaluar Microsoft HTML Workshop në një drejtori tjetër. Nëse një variabël përdoret në skedarin e komandës për të shkruar shtegun drejt tij, atëherë do të mjaftojë të korrigjoni vetëm një rresht në skedarin e komandës, domethënë, atë në të cilin është caktuar vlera e ndryshores. ndihmë_përpiluesi... Nëse ia shkruanim shtegun kompajlerit sa herë që duhet thirrur, atëherë pas ndryshimit të shtegut, do të duhej të korrigjojmë secilën rresht të tillë. Në shembullin e dhënë, janë dy prej tyre, por në një projekt real mund të jenë pesë ose pesëmbëdhjetë prej tyre me të njëjtin sukses, sipas numrit të skedarëve ndihmës që duam të përpilojmë. Problemi nuk është se është e vështirë të korrigjohet manualisht çdo rresht (në fund të fundit, askush nuk i anuloi komandat "kopjoni" dhe "ngjisni"), por se kjo rrit shumë gjasat e një gabimi aksidental.

Parametrat e skedarit të grupit janë gjithashtu variabla, por ato ndryshojnë nga variablat e zakonshëm në atë që vlerat e tyre vendosen kur fillon skedari i grupit. Në vijim, duke folur për variablat, veçanërisht për punën me vlerat e tyre, do të kemi parasysh edhe parametrat e skedarit të grupit, të paktën në mungesë të rezervave të qarta për këtë.

Gjatë shkrimit të skedarëve të grupit, shpesh përdoret teknika e mëposhtme: disa vlera të variablave tregohen krah për krah (ose duke i alternuar ato me ndonjë simbol ose varg), në mënyrë që të përftohet një kuptim i ri kuptimplotë. Një shembull tregohet në listën e mëposhtme.

Kontrollimi i kushteve dhe zgjedhja e opsioneve. Komandat If and goto

Komanda if ju lejon të nënvizoni në një skedar grupi grupe komandash që janë ekzekutuar ose jo, në varësi të kushteve të caktuara. Për çfarë është?

Kontrolli i gjendjes është pothuajse një masë e nevojshme kur krijoni skedarë grupi që përdorin parametra. Para fillimit të punës, skedari i grupit, në përgjithësi, duhet të sigurohet që grupi i saktë i parametrave t'i kalojë atij. Përndryshe, ekziston një rrezik i madh që ai të ekzekutohet gabimisht ose pa dobi, dhe përdoruesi do të duhet vetëm të hamendësojë se cili është problemi. Për më tepër, nëse skedari i grupit fshin, zhvendos ose mbishkruan ndonjë të dhënë, atëherë me parametra të pasaktë, madje mund të shkaktojë dëme.

Lista e mëposhtme tregon skedarin e grupit tashmë të njohur për përpilimin e skedarit të ndihmës. U shtua kontrolli i parametrit të parë për mungesë bosh në fillim të skedarit të grupit. Kushtojini vëmendje kësaj veçorie sintaksore: për operacionin e krahasimit përdoret shenja e dyfishtë e barabartë. Nëse parametri i parë rezulton jo bosh, aktivizohet komanda goto, e cila "hedh" procesorin e komandës në etiketën e specifikuar. Në këtë rast, emri i kësaj etikete përpilohet. Vini re se aty ku është etiketa, emri i saj paraprihet nga dy pika, por jo në komandën goto. Nëse parametri i parë është bosh, guaska kalon në rreshtin tjetër, i cili shfaq një mesazh gabimi. Dhe pastaj te tjetra, e cila e hedh deri në fund të skedarit te etiketa me emrin përfundoni.

nëse jo "% 1" == "" duhet të përpilohet

rem Nëse parametri është bosh, lëshoni një mesazh gabimi

Emri i projektit të skedarit të ndihmës echo nuk është specifikuar

rem dhe shkoni në fund të skedarit të grupit

rem në etiketën e përfundimit

rem Ky është një emërtim me emrin përpilimi

rem Më poshtë janë komandat e përpilimit

Rruga rem për përpiluesin e skedarëve të ndihmës

set help_compiler = "c: \ Program Files \ HTML Help Workshop \ hhc.exe"

rem Rruga drejt drejtorisë ku ndodhen projektet e skedarëve ndihmës

cakto shtegun e projektit = e: \ punë \ projekte \ ndihmë-projekte

rem Thirrni përpiluesin për të përpunuar një projekt specifik,

rem emrin e të cilit kalojmë në parametrin e parë

% help_compiler%% project_path% \% 1.hpj

rem Kjo është një etiketë e quajtur finish

Le ta pranojmë, metoda e propozuar për kontrollimin e një parametri nuk është më e suksesshmja.

Së pari, nëse përdoruesi gabimisht specifikon emrin e një skedari që nuk ekziston si parametër, skedari i grupit do të jetë i kënaqur me këtë dhe do të përpiqet të përpilohet. Një mënyrë më e saktë është të kontrolloni nëse një skedar i tillë ekziston në të vërtetë. Për këtë, një fjalë e veçantë ofrohet në gjuhën e komandës MS-DOS ekzistojnë... Prandaj, do të ishte më mirë të shkruani: nëse ekziston% 1.hpj duhet përpiluar.

Së dyti, përdorimi aktiv i komandës shkoj(i ashtuquajturi kërcim i pakushtëzuar) dhe etiketat e ngatërrojnë shumë kodin. Teknikisht, ato nuk janë aspak të këqija, por është mjaft e papërshtatshme të korrigjoni dhe mbani një skedar grupi të shkruar në këtë stil. Prandaj, programuesit e kanë konsideruar prej kohësh degëzimin e pakushtëzuar si të padëshirueshëm. Më poshtë është një version më i saktë, nga pikëpamja e stilit të programimit, i strukturuar, i cili përdor konstruksionin nese Tjeter... Punon kështu: nëse kushti është i vërtetë, komandat në kllapa pas nëse, dhe nëse është e gabuar, atëherë në kllapa pas tjetër.

rem Kontrolloni nëse parametri është vendosur

nëse nuk ekziston% 1.hpj (

Rruga rem për përpiluesin e skedarëve të ndihmës

set help_compiler = "c: \ Program Files \ HTML Help Workshop \ hhc.exe"

rem Rruga drejt drejtorisë ku ndodhen projektet e skedarëve ndihmës

cakto shtegun e projektit = e: \ punë \ projekte \ ndihmë-projekte

rem Thirrni përpiluesin për të përpunuar një projekt specifik,

% help_compiler%% project_path% \% 1.hpj

Ja një shembull tjetër i punës me çeqe. Skedari i mëposhtëm i grupit krijon një direktori me emrin skedarët e ndihmës(supozoni, për të shkarkuar skedarët e ndihmës të përpiluar në të). Për më tepër, nëse një drejtori me të njëjtin emër ekziston tashmë (dhe me siguri përmban skedarë të vjetër ndihme që nuk do të dëshironit t'i humbisnit: po sikur të rejat të rezultojnë më keq?), skedari i grupit i cakton atij ekstensionin bak. Por nëse drejtoria help-files.bak ekzistonte tashmë, skedari i grupit e fshin atë (do të supozojmë se një kopje rezervë është e mjaftueshme për ne).

nëse ekzistojnë help-files.bak rd help-files.bak

nëse ekzistojnë help-files ren help-files help-files.bak

Përpunimi i skedarëve në masë. Për komandë

Komanda for ju lejon të organizoni ekzekutimin e veprimeve të përsëritura të të njëjtit lloj. Mund ta përdorni për të shfaqur numrat nga një deri në dhjetë, siç tregohet në listën e mëposhtme.

për / l %% i në (1,1,10) bëj jehonë %% i

E ndryshueshme i quajtur një numërues lak. Për shkak të veçorisë së sintaksës së komandës për, emri i numëruesit të ciklit duhet të jetë një shkronjë. Për më tepër, nëse shkruajmë një skedar komande, atëherë duhet të vendoset një shenjë e dyfishtë për qind përpara emrit të numëruesit të ciklit, por nëse thjesht shkruajmë një komandë në vijën e komandës, atëherë një të vetme.

Logjika e këtij ekipi është si më poshtë. Pas fjalës tregohet diapazoni i ndryshimit të numëruesit të ciklit. Në këtë version të komandës, këta janë tre numra: vlera fillestare e numëruesit, hapi i numërimit, vlera kufitare e numëruesit. Kur ekzekutoni një komandë, shell fillimisht do t'i caktojë variablit i kuptimi 1 , dhe më pas në çdo hap të ciklit do ta rrisë atë me 1 derisa të tejkalojë 10 ... Natyrisht, do të ketë dhjetë hapa të tillë. Nëse do të specifikonim numrin si hap të numërimit 2 , atëherë cikli do të ekzekutohej pesë herë. Në çdo hap të ciklit, trupi i lakut ekzekutohet, i shkruar pas fjalës bëj... Në shembullin e treguar, kjo është një komandë eko që printon vlerën aktuale të numëruesit të lakut.

Ndoshta ju mund të mendoni për një situatë ku diçka e tillë kërkohet në të vërtetë, por zakonisht komanda për përdoret për të përsëritur dhe përpunuar skedarë. Duhet të them që në raste mjaft të thjeshta, përpunimi i skedarëve në masë kryhet duke përdorur shkronja të ngurta. Nëse, ne duam që të gjithë skedarët në drejtorinë aktuale të zëvendësojnë shtesën .htm.html, futim komandën ren * .htm * .html... Por nëse e njëjta gjë duhet të bëhet jo në një direktori, por në një pemë drejtorie, atëherë nuk mund të bëni pa komandën for. Skedari i mëposhtëm i grupit e kryen këtë veprim për të gjithë skedarët htm në nëndrejtorinë e uebsajtit të drejtorisë aktuale. Më saktësisht, në të gjithë pemën e drejtorive që është brenda faqe interneti.

për / r uebsajtin %% i në (* .htm) bëj %% i %% ~ ni.html

Celës / r tregon një kalim direktoriumi faqe interneti dhe gjithë brendësinë e tij. Nëse nuk e specifikoni atë (por atëherë nuk ju lejohet të specifikoni drejtorinë), atëherë do të përpunohen vetëm skedarët në drejtorinë aktuale. Gama e vlerave të numëruesit të lakut në këtë version të komandës është grupi i të gjithë skedarëve me shtesë .htm ndodhet brenda një drejtorie (më saktë, një pemë) faqe interneti... Në pamje të parë, hyrja është e çuditshme ~ ni do të thotë se nga vlera e ndryshores i vetëm emri i skedarit duhet të theksohet. Gjuha e komandës MS-DOS ofron disa modifikues të tillë, për shembull, hyrjen ~ xi qëndron për zgjerimin e skedarit. Të gjithë modifikuesit përshkruhen në referencën e komandës për.

Trupi i lakut mund të përbëhet nga disa komanda, të mbyllura në kllapa.

për / r uebsajtin %% i në (* .htm) bëj (

rem Shfaq emrin e skedarit

rem Riemërto skedarin

ren %% i %% ~ ni.html

Transferoni kontrollin në një skedar tjetër grupi. Komanda e thirrjes

Është e mundur të thirret një skedar tjetër komande nga një skedar grupi. Kjo bëhet nga komanda telefononi... Çuditërisht, variablat e vendosur në skedarin e komandës thirrëse janë "të dukshme" për atë të thirrur. Në të kundërt, pasi skedari i thirrur të përfundojë së punuari dhe t'i kthejë kontrollin telefonuesit, ky i fundit do të "shohë" variablat që i lënë atij nga i thirruri "i trashëguar". Kjo i lejon zhvilluesit të skedarëve të grupit të veprojë si më poshtë, për shembull. Nëse disa skedarë grupi duhet të përdorin të njëjtat vlera, për shembull, shtigjet për disa skedarë, ato mund të zhvendosen në një skedar të veçantë grupi, i cili do të veprojë si skedar konfigurimi. Çdo skedar grupi i punës do të fillojë me një thirrje në konfigurimin. Përfitimi është se kur ndryshoni shtigjet, ju duhet të bëni ndryshime vetëm në një skedar konfigurimi, dhe jo në shumë punëtorë.

Skedari i grupit "Config". konfigurim.bat.

Rruga rem për përpiluesin e skedarëve të ndihmës

set help_compiler = "c: \ Program Files \ HTML Help Workshop \ hhc.exe"

rem Rruga drejt drejtorisë ku ndodhen projektet e skedarëve ndihmës

cakto shtegun e projektit = e: \ punë \ projekte \ ndihmë-projekte

Skedari i grupit "punon".

rem Vendosja e variablave

rem Kontrolloni nëse parametri është vendosur

nëse nuk ekziston% 1.hpj (

rem Nëse parametri është bosh, lëshoni një mesazh gabimi

echo Nuk ekziston një projekt i tillë skedari ndihmës.

rem Më poshtë janë komandat e përpilimit

rem Thirrni përpiluesin për të përpunuar një projekt specifik,

rem emrin e të cilit kalojmë në parametrin e parë

% help_compiler%% project_path% \% 1.hpj

Kur punoni në një kompjuter, shpesh është e nevojshme të përsëriten të njëjtat komanda DOS për të kryer veprime të ekzekutuara në mënyrë periodike, për të ndërtuar një sekuencë komplekse dhe me shumë nivele komandash ose aplikacionesh të ekzekutueshme, për të automatizuar punën me aplikacione dhe skedarë me ose pa përdorues. Sistemi operativ ka aftësinë për të shkruar disa komanda në një skedar bat. Në të njëjtën kohë, thjesht duke nisur këtë skedar grupi (shpesh i quajtur skript, ose thjesht "skedar grumbull"), mund të ekzekutoni komandat e përshkruara dhe duke e shkruar atë në ngjarjet e programuesit të Windows, mund ta automatizoni këtë proces.

Një tipar i këtij lloji skedarësh është mungesa e ndonjë kodi brenda - ka vetëm informacione të orës që lexohen dhe ekzekutohen nga procesori i komandës DOS, i cili është i pajtueshëm me pothuajse të gjitha versionet e sistemit operativ Windows. Një nga shembujt e mrekullueshëm është skedari autoexec.bat, i cili kërkohet për të nisur këtë OS, pasi është ai që e konfiguron atë gjatë fillimit.

Karakteristikat themelore të skedarëve të grupit

Komandat që përmban skedari bat mund të ndahen me kusht në disa grupe sipas funksionalitetit të tyre:

Projektuar për të shfaqur një vlerë, frazë, aplikacion ose informacion specifik në ekran;
- të zbatojë lëshimin e dokumenteve të grupit;
- të punojë me cikle;
- të krijojë ekzekutimin e degëzimit duke përdorur kushte;
- për të punuar me aplikacione.

Ekzekutimi i skedarëve të grupit

Skedarët e grupit mund të hapen në mënyra të ndryshme. Kur punoni në drejtorinë aktuale, thjesht mund të futni emrat e skedarëve me ose pa parametra shtesë. Në këtë rast, komandat e skedarëve bat pas fillimit do të ekzekutohen në mënyrë sekuenciale njëra pas tjetrës, tashmë pa ndërhyrjen e përdoruesit.

Kur një skedar grupi gjendet në një drejtori tjetër, duhet të specifikoni shtegun e plotë për në drejtorinë ku është ruajtur, përveç emrit të plotë të këtij skedari. Shtesa e skedarit gjithashtu mund të hiqet. Për shembull, drejtoria aktuale është d: \ photo \ work, dhe skedari i grupit vera.bat, i cili duhet të ekzekutohet me parametrat resize.doc dhe / p, ndodhet në direktorinë d: \ photo \ home. Më pas, për të nisur skedarin tonë, duhet të shkruani komandën d: \ photo \ home \ vera resize.doc / p ose komandën .. \ home \ vera resize.doc / p.

Ndërprerja e punës

Komandat e skedarit bat të ekzekutuara pas nisjes mund të ndërpriten nga kombinimet e butonave +dhe +... Ekrani do t'ju kërkojë të ndërprisni ekzekutimin e skedarit të grupit me një kërkesë në pritje Po ose Jo. Nëse futni Y, ekzekutimi do të ndërpritet dhe lista e mbetur e komandave në skedarin bat do të shpërfillet. Nëse futni karakterin N, atëherë ekzekutimi do të vazhdojë me komandën tjetër nga lista.

Thirrja e një skedari tjetër grupi

Skedarët Bat mund të përmbajnë lidhje me ekzekutimin e skripteve të tjera. Nëse thjesht shkruani një skedar bat në trupin e skriptit, komandat pas tij nuk do të ekzekutohen, pasi kontrolli transferohet në një skedar tjetër grupi dhe komandat do të ekzekutohen prej tij. Nëse dëshironi të ktheheni pas fillimit të një skedari të brendshëm, mund ta telefononi me komandën CALL. Formati i komandës duket si ky: THIRRJE emrin e skedarit bat [parametrat e nisjes].

Parametrat që i kalohen skedarit(s) grupit të thirrur zakonisht janë karakteret% 1 -% 9. Kur komandat e skedarëve bat kalohen të gjitha në mënyrë sekuenciale, ekzekutimi i skriptit origjinal do të vazhdojë nga rreshti tjetër.

Ekzekutimi hap pas hapi

Ka raste kur komandat e skedarëve bat duhet të ekzekutohen hap pas hapi (me një ndalesë pas çdo rreshti). Më shpesh, kjo mënyrë kërkohet kur korrigjoni ose testoni skriptet. Shkrimi i komandës duket si ky: COMMAND / y / c emri i skriptit [parametrat].

Kur të ekzekutohet, një kërkesë Y ose N do të lëshohet për secilën komandë. Nëse keni nevojë të ekzekutoni një komandë, shtypni tastin Enter ose Y. Nëse duhet të kapërceni një komandë, shtypni ESC ose N.

Çaktivizoni ose aktivizoni shfaqjen e komandave në ekran

Kur skedari bat hapet, komandat shfaqen në ekran rresht pas rreshti përpara se të ekzekutohen dhe më pas të ekzekutohen. Ndonjëherë kjo shkakton bezdi, pasi me një skedar të madh grupi, komandat ekzekutohen në një listë të gjatë para përdoruesit në ekran, dhe ndonjëherë ato duhet të shfaqen, për shembull, për dialog ose korrigjim. Për të shfaqur skedarin bat të komandës, përdorni komandën ECHO ON. Për të çaktivizuar këtë modalitet, futni ECHO me parametrin OFF. Në këtë rast, të gjitha komandat e ekzekutuara më tej nuk do të shfaqen më në ekran.

Për të çaktivizuar daljen në ekran të vetëm një rreshti të skedarit të grupit, mund të përdorni simbolin @ në fillim të kësaj rreshti. Më shpesh, ky simbol mund të gjendet në lidhje me komandën @ECHO OFF për të parandaluar shfaqjen e tij në ekranin e monitorit. Kjo mënyrë përdoret shpesh nga kriminelët kibernetikë, duke krijuar viruse të bazuara në skedarë bat ose duke sjellë telashe të vogla dhe të mëdha për përdoruesit e kompjuterit.

Mesazhet e ekzekutimit të komandave

Nëse pas komandës ECHO ka karaktere të tjera përveç ON ose OFF, ato do të shfaqen në çdo mënyrë. Nëse ECHO është pa parametra, atëherë shfaq gjendjen e mënyrës së shfaqjes së komandave të ekzekutueshme - ndezur ose fikur.

Nëse dëshironi, ju mund të luani edhe kompjuterin duke përdorur një skedar bat. Komandat e paraqitura më poshtë bazohen në deklaratën ECHO me shtimin e karaktereve speciale.

Për të luajtur një sinjal zanor, duhet të shfaqni simbolin standard me kodin 7. Këtë mund ta bëni duke shtypur tastin dhe "7" në tastierën numerike (etiketuar "home").

Për të përmirësuar lexueshmërinë e mesazheve, mund të përdorni komandën ECHO me parametrin ".". (vendoset menjëherë pas komandës pa hapësirë) ose një karakter special me kodin 255. Në ekran do të duket si një rresht bosh.

Komanda ECHO mund të përdoret për të nxjerrë mesazhe në një skedar të veçantë. Thelbi i tij konsiston në ridrejtimin e daljes së mesazheve për të shkruar në një skedar, dhe jo në ekranin e monitorit. Mund të përdorni shkop për të ruajtur regjistrat, pyetësorët dhe regjistrimin e ngjarjeve. Komandat e daljes kanë formatin e mëposhtëm:

Mesazhi ECHO >> emri i skedarit - kjo komandë shton një rresht në fund të një skedari ekzistues. Nëse nuk ka një skedar të tillë në këtë direktori, atëherë krijohet një skedar i ri.

ECHO message> filename - kjo komandë krijon një skedar të ri dhe shkruan rreshtin aktual në të. Nëse ekziston një skedar i tillë në drejtorinë aktuale, përmbajtja e tij do të fshihet dhe komanda ose rezultati i tij do të regjistrohet.

Përdorimi i komenteve

Për lehtësinë e redaktimit të skripteve, përdoret komanda REM. Të gjitha komandat e skedarëve bat që janë pas tij injorohen nga Windows gjatë ekzekutimit. Ato mund të shihen gjatë redaktimit dhe në modalitetin hap pas hapi. Në të gjitha rastet e tjera, komentet nuk do të shfaqen në ekran.

Komanda e vonesës në skedarin bat

Ndonjëherë, gjatë ekzekutimit të një skedari grupor, bëhet e nevojshme të ndaloni përkohësisht ekzekutimin e komandave, për shembull, të prisni reagimin e përdoruesit, të rrisni kohën për të lexuar një mesazh të gjatë, për të futur një disk, për të konfirmuar praninë e përdorues ose për të korrigjuar një skedar grupi. Komanda e vonesës në skedarin bat është shkruar si PAUSE pa parametra. Në këtë rast, ekrani do të shfaqë një mesazh si "Shtypni çdo tast për të vazhduar" dhe skripti do të ndalet derisa të shtypet butoni i tastierës. Nëse shtypet kombinimi +ose +, atëherë sistemi do ta interpretojë këtë si përfundim të skedarit të ekzekutueshëm dhe do të lëshojë një kërkesë për të konfirmuar përfundimin e punës së tij: “Ndërpritet ekzekutimi i skedarit të grupit? (Y / J) ". Nëse shtypni tastin Y, skripti do të ndërpritet në këtë pikë dhe të gjitha komandat e mbetura të pazgjidhura do të shpërfillen. Shtypja e N do të vazhdojë ekzekutimin me komandën tjetër. Kur ndërpritet, duke shtypur çdo çelës tjetër alfanumerik, si dhe "Hapësirë" dhe "Enter", ekzekutimi i skedarit të ekzekutueshëm do të vazhdojë me komandën tjetër.

listën e skedarëve

Për ekzekutimin sekuencial të disa skedarëve nga lista e vendosur në të njëjtën direktori, mund të përdorni gjithashtu një skedar bat. Komandat "Run by name" dhe "Run by file extension" shpesh mund të ndihmojnë në automatizimin e përpunimit të dokumenteve, të tilla si renditja e bashkëngjitjeve të postës elektronike. Ato ndryshojnë në parametra për komandën FOR. Formati i shkrimit të tij është paraqitur më poshtë:

FOR% x IN (lista e skedarëve) komanda DO, ku:

X - çdo karakter, përveç numrave nga 0 në 9;

Lista - emrat e skedarëve të ndarë me hapësirë ​​ose emri i një skedari të vetëm; në këtë rast, ju mund të përdorni karakteret speciale "?" dhe "*" për të zëvendësuar nga një në disa karaktere në emrin e skedarit;

Komanda - çdo komandë ose program DOS përveç FOR; nëse ka nevojë të përdorni FOR, atëherë në vend të% x duhet të specifikoni %% x.

Kur përdorni këtë komandë për të shkruar skedarë bat, duhet të keni parasysh që emrat në programet DOS kanë një kufizim në gjatësinë e emrit. Në mënyrë që komanda FOR të funksionojë me emra të gjatë të skedarëve, duhet të mbani mend të ekzekutoni komandën LFNFOR ON përpara saj për të aktivizuar mënyrën e funksionimit me emra të gjatë dhe LFNFOR OFF për ta çaktivizuar atë dhe për t'u kthyer në gjatësinë standarde të skedarit.

Shumë funksione me programe, të tilla si krahasimi i skedarëve me lloje të caktuara shtesë në një direktori me skedarë të të njëjtit lloj nga një drejtori tjetër, kopjimi i të gjithë skedarëve të drejtorisë aktuale në një tjetër, ekzekutimi vijues i skedarëve me shtesa të një lloji të caktuar dhe fillimi i emrave me numra, mund të bëhet vetëm me një komandë të futur në skedarin bat. Nisja e programit mund të kombinohet me kërkesat e përdoruesve, gjë që përmirëson komoditetin e punës me të dhënat.

Tranzicionet në skedarët bat

Për lehtësinë e kontrollit të rendit të nisjes së komandave në skedarët bat, ata shpesh përdorin komandat e kërcimit dhe etiketat përgjatë të cilave bëhen këto kalime.
Një emërtim është çdo rresht në një skedar të ekzekutueshëm që fillon me dy pika. Emri i etiketës është karakteri i vendosur pas dy pikave deri në fund të rreshtit ose deri në hapësirën e parë, pas së cilës pjesa tjetër e rreshtit shpërfillet, e cila mund të përdoret si koment për etiketën e kërcimit.

Komanda e kërcimit shkruhet GOTO me emrin e etiketës të ndarë me një hapësirë. Nëse nuk ka asnjë parametër ose emri i etiketës në skedarin e komandës nuk gjendet, atëherë skripti ndalon së punuari në këtë komandë. Shembull:

REM (ekzekutoni komandat e nevojshme).

Në këtë shembull, ekzekutimi sekuencial i skedarit të grupit, duke arritur GOTO zzz, kalon në etiketën: zzz dhe vazhdon me REM, duke injoruar çdo gjë midis komandës së kërcimit dhe etiketës së specifikuar.

Përdorimi i kushteve kur punoni me skedarë bat

Një skedar bat mund ose nuk mund të ekzekutojë komanda në varësi të kushteve të ndryshme, nëse në të zbatohet kontrolli për ndodhjen e një ngjarjeje IF. Formati i kësaj komande është “Nëse komanda e kushtit”.

Gjendja përfaqësohet nga variante të ndryshme shprehjesh:

Numri ERRORLEVEL - në rast se programi i ekzekutuar më parë ka përfunduar me një kod dalje të barabartë ose më të madh se vlera numerike e specifikuar, kushti do të jetë i vërtetë.

LINJA 1 == LINJA 2 - në rast të përputhjes së plotë të rreshtave, kushti bëhet i vërtetë. Në vend të vargjeve, mund të zëvendësoni karakteret% 0 -% 9, më pas do të krahasohen parametrat e skedarit të komandës.

EXIST - emri i skedarit - nëse skedari i specifikuar ekziston, atëherë kushti është i vërtetë.

NOT - kusht - nëse kushti i specifikuar është false, atëherë dalja e komandës do të marrë një vlerë të vërtetë.

Komandat e përdorura në skedarët bat

Nëse klikoni butonin "Start" dhe ekzekutoni vijën e komandës (cmd), mund të shihni gjithçka të futur në skedarin bat, mund ta përdorni si një mjet për korrigjimin e gabimeve, si një asistent, një program për të marrë informacione rreth komandave. Për ta bërë këtë, thjesht mund të shkruani HELP. Në këtë rast, lëshohet një listë komandash me përshkrime të shkurtra për to. Për informacion më të detajuar, mund të futni HELP me emrin e komandës së kërkuar.

Përdorimi i skedarëve bat gjatë kopjimit të të dhënave

Skedarët e grupit e bëjnë jetën shumë më të lehtë për sysadminët në punën e tyre të përditshme. Përdorimet më të zakonshme për këto janë krijimi, fshirja, riemërtimi dhe më shumë. E gjithë kjo bazohet në përdorimin e komandës COPY bat-file. Për shembull, mund të krijoni një program që bën kopje arkivore të dokumenteve nga një dosje e zgjedhur me të dhëna përdoruesi të formateve të caktuara, duke përjashtuar, për shembull, skedarë të mëdhenj mediash, duke siguruar një kopje rezervë në një dosje me emrin e përdoruesit dhe duke e quajtur "File_copy_Command. lakuriq nate”. Pas kësaj, është e nevojshme të sigurohet nisja e tij në një kohë të caktuar duke përdorur planifikuesin e integruar ose nga vetë programi dhe në këtë mënyrë të sigurohet siguria e të dhënave të përdoruesit.

Përdorimi i skedarëve bat (përndryshe - "batch file", "batch file") shpesh mund të lehtësojë punën tuaj, për shembull, të automatizoni instalimin e softuerit, sipas parametrave të paracaktuar; sinkronizimi i datës dhe orës; nisja e sekuencave të komandës dhe kështu me radhë. Sidoqoftë, për të përdorur skriptet e tilla, duhet të dini se si t'i krijoni ato. Skedarët Bat janë në thelb një koleksion komandash të konsolës, ashtu si ato të përdorura në vijën e komandës.

Artikulli diskuton tre metoda për krijimin e skedarëve .bat:

  1. Duke përdorur vijën e komandës.
  2. Duke përdorur programin "Notepad".
  3. Duke përdorur programin "Dr. Batcher".

Hapi 1. Për të nisur linjën e komandës në menynë "Start", përdorni dialogun "Gjej programet dhe skedarët". Duhet të vendosni parametrin e kërkimit cmd dhe të klikoni me të majtën mbi ikonën në seksionin "Programet".

Hapi 2. Rekomandohet të përdorni një direktori të veçantë për të ruajtur skedarët e grumbulluar të shkruar, kështu që zgjidhni një vendndodhje në hard diskun tuaj dhe krijoni një dosje të veçantë duke futur komandën "MD D: \ Bat".

Në një shënim! Komanda futet pa thonjëza, hapësira vendoset vetëm pas përdorimitMD. Në rastin e përshkruar, një dosje me emrin « lakuriq nate "do të krijohet në diskD. Linja e komandës është e pandjeshme, domethënë rezultati i ekzekutimit të "MDD: \lakuriqi ","mdD: \Lakuriku "dhe"mdd: \Bat ”do të jetë i njëjtë.

Hapi 3. Krijo skedarin aktual të grupit duke përdorur komandën "@echo off> D: \ Bat \ probnik.bat".

Në një shënim! Në këtë rast, rasti është i rëndësishëm kur specifikoni shtegun e vendndodhjes, domethënë dosjen "shkop ","Lakuriku "dhe"BAT ”- tre drejtori të pavarura dhe krejtësisht të ndryshme. Nëse tregoni një dosje që nuk ekziston, komanda nuk do të ekzekutohet. Ju lutemi vini re se nuk do të ketë as mesazh gabimi.

Hapi 4. Për të ndryshuar përmbajtjen e një skedari, hapni vendndodhjen e tij të ruajtjes, hapni menunë e kontekstit dhe zgjidhni rreshtin "Ndrysho".

Krijoni një skedar grumbull duke përdorur Notepad

Hapi 1. Për të nisur Notepad, futni menynë Të gjitha programet, artikullin Standard dhe klikoni në ikonën e nisjes.

Hapi 2.

Mësoni se si të krijoni një skedar pa shumë njohuri programore nga artikulli i ri -

Si shembull, ju sugjerojmë të përdorni kodin e mëposhtëm që shfaq imazhin e një ylli:

« @echo fikur

mode con cols = 32 rreshta = 50

ylli i titullit!

për %% i në (

88888888888888881888888888888888,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,

) bëj jehonë %% i

pauzë> nul

Kujdes! Kodi duhet të futet pa thonjëza. Gjithmonë kontrolloni sintaksën tuaj të komandës. Nëse harroni të vendosni një presje në fund të një rreshti, atëherë gjatë ekzekutimit të programit do të bashkohet me atë tjetër.

Hapi 3. Ruani skedarin që rezulton në drejtorinë e dëshiruar. Për të ndryshuar rezolucionin, përdorni rreshtin "Lloji i skedarit", zgjidhni "Të gjithë skedarët" në të dhe kur vendosni një emër, pas një periudhe, specifikoni "bat".

Krijimi i një skedari grumbull duke përdorur "Dr.Baçer"

Produkti i specifikuar i softuerit paguhet, por ofron mundësinë për të përdorur versionin e testimit për 30 ditë.

Hapi 1. Për të krijuar një skedar, përdorni menynë "File", artikullin "New ..." ose kombinimin e tastit "Ctrl + N".

Hapi 2. Në kutinë e dialogut, kontrolloni "Empty Batch File" dhe klikoni "OK".

Hapi 3. Specifikoni cilat komanda duhet të ekzekutojë skedari bat.

Në një shënim! Korniza e djathtë përmban komanda kyçe që mund t'i përdorni kur shkruani kodin. Mjafton të zgjidhni atë që kërkohet dhe të shtypni butonin "FutCommand ", e cila ndihmon në kursimin e kohës kur punoni.

Hapi 4. Ruani skedarin që rezulton në drejtorinë e dëshiruar.

E rëndësishme! Ju lutemi vini re se programi i specifikuar ju lejon të korrigjoni programin menjëherë. Mjafton të përdorni menunë "Batch ”për të filluar një sekuencë të futur tashmë. Progresi shfaqet në kornizën e poshtme. Kur përdorni artikullin "EkzekutoniE jashtmeDritarja ... ”skedari i grupit do të ekzekutohet, ngjashëm me nisjen e tij me anë të sistemit operativ.

konkluzioni

Ne kemi përshkruar tre mënyra për të krijuar skedarë .bat. Dy nga këto metoda janë metoda standarde të disponueshme me Windows, njëra kërkon që të instalohet softuer shtesë. Vlerësimi i secilës prej metodave është paraqitur në tabelën përmbledhëse.

Informacion \ EmriLinja e komandësFletoreDr. Batcher
LiçensëDorëzimi me WindowsDorëzimi me WindowsI paguar
Gjuha ruseNë varësi të versionit të WindowsNë varësi të versionit
Krijo një skedar grumbullpopopo
Redaktimi i skedarëve në grupJopopo
Komoditeti i ndërfaqes (nga 1 në 5)4 4 5

Video - Krijo skedarin Bat

Artikujt kryesorë të lidhur