Příkazy pro zápis souborů bat. Jak vytvořit složku ze souboru bat

Lidé, kteří znají termín dávkový soubor, vědí, že soubory BAT mohou výrazně zjednodušit život a ušetřit čas, pokud je umíte správně zapisovat a používat. V tomto článku budu hovořit o tom, jak vytvářet soubory BAT, a seznámím vás s běžnými chybami, které se obvykle vyskytují při jejich psaní.

Vytvoření souboru BAT je velmi snadné. Stačí otevřít poznámkový blok a uložit prázdný list s příponou .bat výběrem možnosti Uložit jako... a do pole Název souboru napsat něco končícího na .bat, například test.bat .
Zadejte typ souboru jako na obrázku níže - Všechny soubory. Uložit a získat soubor BAT.

Soubor BAT můžete upravit v poznámkovém bloku nebo v jakémkoli jiném textovém editoru orientovaném na kód.

Nyní přejděme k praktickým informacím. Na netu mnozí hledají odpověď na otázku Jak se vypořádat s mezerami v souborech BAT? . V cestách ke složkám a spustitelným souborům způsobuje přítomnost mezery chybu. Nejčastější odpověď je: Uzavřete cestu do uvozovek. A tato odpověď není správná. Pravda, někteří namítnou s pěnou u úst, že to jde. Objevila se tedy dvě proč - proč to není pravda a proč některá budou.

V systému Windows (stejně jako v systému UNIX) jsou programy nainstalované v systému systémem odpovídajícím způsobem registrovány. Některé z nainstalovaných programů lze tedy spustit jedním jednoduchým příkazem ze souboru BAT nebo z apletu Spustit na panelu Start. Jedním z takových programů je Firefox:

spustit firefox

Pokud po tomto příkazu zapíšete cestu ke spustitelnému souboru, stane se následující: spustí se prohlížeč Firefox a pokusí se zpracovat požadavek, tedy soubor, jehož cesta je zadána. Tedy pokud zadáte následující:

spusťte firefox C:\Program Files\Mozilla Firefox\firefox.exe

Otevře se prohlížeč bez ohledu na to, co je napsáno po spuštění firefoxu. To je důvod, proč někteří soudruzi zajistí, že vše funguje dobře. Pokud si však vezmete přenosný program, bude situace úplně jiná. Vezměme si jako příklad ftp klienta Filezilla. Protože systém o programu neví, výše uvedený řádek

spusťte filezillu

to nebude fungovat. Chcete-li spustit program, který systém nezná, musíte zadat cestu k němu:

spusťte D:\FileZilla\FileZilla.exe

Dlouhá jména v souborech bat

Nyní pojďme mluvit o cestách a prostorech. První způsob, jak se tomuto problému vyhnout, je použít krátký název.

spusťte C:\Program Files\Sound Club\scw.exe

V příkladu jsou dva názvy s mezerami. Vyměňme je za krátké. Pravidla pro tvorbu krátkých názvů jsou následující: v zkráceném názvu je prvních šest znaků názvu použito bez mezer, za názvem je uvedeno pořadové číslo složky pomocí symbolu ~ . Protože mám složky Program Files a Sound Club v jednotném čísle, dostávám následující:

Program Files - Progra~1 Sound Club - SoundC~1 start C:\Progra~1 \SoundC~1 \scw.exe

Pokud jsou poblíž dvě složky, například Sound Club a Sound Clown , pak podle pravidel ve výše uvedeném příkladu budete muset zadat SoundC ~ 2 , protože v tomto případě bude Sound Club druhým názvem (jména jsou brána v úvahu v abecední pořadí).

Tato metoda je však nepohodlná, protože musíte zadat sériová čísla. Situace s programovými soubory je víceméně normální. Málokdo se na systémovém disku setká se dvěma podobnými složkami. Pokud se však rozhodnete nainstalovat do počítače více produktů Mozilla. Získáte několik složek, například:

Mozilla Firefox Mozilla Thunderbird Mozilla Sunbird

Jejich krátká jména by byla

Mozill~1 Mozill~2 Mozill~3

Nyní si představte, že jste napsali soubor BAT zmiňující tyto programy. Pokud odstraníte Firefox, zbývající položky přestanou fungovat, a pokud odstraníte Thunderbird, položka pro Sunbird přestane fungovat. Zkrátka cesta s krátkými jmény není naše cesta.

Mezery a uvozovky v souborech bat

Citáty skutečně fungují, ale ne tak, jak se obvykle doporučuje. Obvykle se doporučuje následující:

spustit "C:\Program Files\Sound Club\scw.exe"

To nebude fungovat, protože když se podíváte na nápovědu ( start /? ), uvidíte v nápovědě následující:

START ["hlavička"] [příkaz/program] [možnosti]

Jak vidíte, prvním parametrem je název okna a je v uvozovkách. Tento parametr je volitelný, ale přesto se doporučuje zadat (), abyste předešli chybám při provádění příkazu. Do uvozovek nemůžete nic psát. Dopadne to takto:

spustit "" "C:\Program Files\Sound Club\scw.exe"

Fungovat bude i možnost uvádět všechna jména s mezerami samostatně:

spusťte C:\"Program Files"\"Sound Club"\scw.exe

V některých případech však nic z výše uvedeného nefunguje. V takových případech mohu poradit pomocí příkazu cd. Přejdeme na systémový oddíl, poté pomocí cd do složky Program Files a spustíme program ( start ):

%SystemDrive% cd \Program Files\Sound Club\ spusťte scw.exe

Myslím, že tento způsob bude fungovat všude. Nyní několik důležitých bodů. Předpokládejme, že jste vytvořili dávkový soubor, který spouští tři programy, a potřebujete dočasně vyloučit spuštění jednoho ze tří. To lze provést smazáním řádku nebo jeho zakomentováním. První způsob je vandalský a druhý níže.

start firefox start jetaudio rem start defraggler

V tomto případě je spuštění programu Defraggler.exe nainstalovaného v systému zakázáno. Zakomentujte řádky přidáním příkazu rem na začátek řádku. Všechny soubory BAT se spouštějí v okně konzoly. Aby na konci provádění příkazů zmizel, nezapomeňte na konec napsat příkaz exit.

start firefox start jetaudio rem start defraggler exit

Spouštění aplikací ze souboru bat

V první části článku jsem mluvil obecně o souborech BAT. Nyní se ukázalo - co to je a s čím se jí. V druhé části si povíme něco konkrétnějšího. Například o tom, jak spustit několik aplikací s určitými nastaveními pomocí souboru BAT nebo nainstalovat program automaticky, abyste neztráceli čas odpověďmi typu Souhlasíte s podmínkami licenční smlouvy? a nemačkejte žádná tlačítka navíc.

Výše nastínil několik způsobů, jak spouštět aplikace pomocí souboru BAT. Úplně první je krátký příkaz ke spuštění programu nainstalovaného v systému.

spustit firefox

Ne vždy to jde. Proto lze takovou techniku ​​plně aplikovat na konkrétní systém, ale není vhodná jako univerzální řešení. Pokud existuje cíl, aby soubor BAT fungoval všude a vždy, musíte použít úplné cesty:

spusťte C:\"Program Files"\"Mozilla Firefox"\firefox.exe

Také jsem si všiml, že příkaz k dokončení musí být přítomen v souboru BAT:

spusťte C:\"Program Files"\"Mozilla Firefox"\firefox.exe ukončete

Spouštění programů v souborech bat s parametry (klíči)

Program můžete nejen spustit, ale můžete mu při spuštění zadat další příkazy. Například příkaz ke spuštění minimalizován:

start /min D:\FileZilla\FileZilla.exe konec

Příkaz v tomto případě znamená zadat klíč. Klíč je určen lomítkem za hlavním příkazem (příkaz /key). Hlavním příkazem je v tomto případě start . Pravda, klávesa min funguje pouze polovinu času, protože odkazuje konkrétně na příkaz start a nikoli na programy, které tento příkaz spouští.

Obecně platí, že kláves je mnoho a sady kláves pro různé programy se mohou výrazně lišit. Existuje však několik běžných. Například klávesa nápovědy (/? nebo /help ). Abychom viděli, jak tento klíč funguje, podívejme se na praktický příklad. Otevřete konzolu (klikněte + R, zadejte cmd, poté Enter) a do konzoly zadejte následující:

Start/?

Konzole zobrazí seznam platných kláves s komentáři pro příkaz start.

Všimněte si přepínače /wait. V některých případech je prostě nenahraditelná. Například jste se rozhodli rozbalit archiv s programem pomocí souboru BAT a spustit právě tento program. V dávkovém souboru budou dva příkazy – pro rozbalení a pro spuštění. Vzhledem k tomu, že příkazy budou prováděny téměř současně při spuštění souboru BAT, archiv se nestihne rozbalit a nebude co spouštět. Proto dojde k chybě. V tomto případě klíč přijde k záchraně. /Počkejte:

Systém tedy nejprve provede první akci, počká na její dokončení a teprve poté přistoupí k druhé. Pokud potřebujete počkat určitou dobu, je jednodušší použít nástroj konzoly. Na správné místo v souboru BAT napište následující příkaz (počet - počet sekund):

spusťte Sleep.exe 15

S klíči toho můžete udělat hodně. Je možné instalovat aplikace. K tomu se používá několik klíčů v závislosti na typu instalačního programu použitého k instalaci programu do počítače:

/S /s /q /tichý a řada dalších

V některých případech je to velmi pohodlné. Avast Antivirus má ve firemní verzi možnost tiché instalace. Bezplatná (domácí) verze údajně nemá tichou instalaci. Pokud však víte, jak instalační program InstallShield funguje, pochopíte, že se jedná o kachnu, protože tento instalační program sám o sobě podporuje přepínač tiché instalace /S. A to znamená i všechny produkty vyrobené na jejím základě. A Avast není výjimkou. Stačí vytvořit soubor BAT s obsahem ve složce Avast

spusťte avast.exe /S exit

spustíte a program se na váš počítač nainstaluje téměř bez vaší účasti. Můžete si tak napsat celý seznam programů pro tichou instalaci a ušetřit čas například při přeinstalaci systému. Podrobnější informace o klíčích získáte v článku.

Existují další možnosti pro správu programů pomocí souborů BAT. Program můžete spustit tak, že mu řeknete, aby při spuštění otevřel soubor. Tuto metodu používám při tvorbě webových stránek. Je velmi pohodlné, když všechny vaše nástroje otevřou potřebné dokumenty a složky stisknutím jediného tlačítka:

rem připojení k ftp serveru start /min D:\FileZilla\FileZilla.exe "ftp://login:heslo@server" rem otevírání index.php ve Firefoxu spusťte C:\"programové soubory"\"mozilla firefox"\firefox.exe "http://localhost/site_folder/index.php" rem otevřením start.html v textovém editoru start /min C:\"Program Files"\text_editor.exe "E:\server\složka_webu\index.html" rem otevřít složku se soubory webu start /min E:\server\složka_s_webem výstup rem konzoly výstup

Podotýkám, že všechny výše uvedené metody lze použít v různých kombinacích a kombinacích.

start /min /wait program.exe /m /S start C:\Directory\program2.exe "C:\Files\file.odt" konec

Je však důležité si pamatovat: vše, co souvisí s prováděním programu spuštěného v dávkovém souboru, je s ním zapsáno na stejném řádku.

spusťte C:\"programové soubory"\"mozilla firefox"\firefox.exe "http://localhost/site_folder/index.php"

Jako epilog nabídnu k recenzi převodník BAT souborů do aplikací formátu .exe - . Soubor BAT není vždy esteticky příjemný, ale pomocí převodníku můžete zabalit dávkový soubor do souboru exe a ozdobit jej libovolnou ikonou podle vašeho výběru.

Narazil jsem na další převodník BAT na EXE, můžete jej považovat za alternativu k předchozímu programu: Advanced Bat To Exe Converter

Mnoho technických autorů potřebuje čas od času automatizovat zpracování souborů. Někdy mluvíme o jediném zpracování velkého množství souborů, někdy o systematickém provádění stejných akcí, například při použití technologií DocBook nebo DITA). Zpracování každého souboru samostatným ručním příkazem nejen zabere čas, ale také vede k těžko odhalitelným chybám, ke kterým dochází v důsledku přirozené nepozornosti obsluhy.

V operačním systému MS-DOS a ve všech operačních systémech rodiny Microsoft Windows jsou nejjednodušším prostředkem pro automatizaci zpracování souborů (a adresářů) tzv. dávkové soubory. Řekněme si hned, že dávkové soubory nejsou jediným prostředkem k automatizaci práce uživatele, a to ani mezi těmi vestavěnými. V operačních systémech rodiny Microsoft Windows počínaje verzí 98 existuje také Windows Script(ing) Host. Navíc nám nikdo nezakazuje používat pro tento účel nějaký interpretovaný jazyk, řekněme Perl, Python nebo Ruby. Tyto nástroje, ač jsou výkonné, však vyžadují schopnost programování, tzn. skládat a hlavně ladit programy, alespoň na dobré amatérské úrovni. Použití dávkových souborů je dostupné každému bez speciálního školení, péče a zdravý rozum jsou docela dost.

Důležitá poznámka. Úplný odkaz nebo dokonce svědomitě napsaný návod na příkazy MS-DOS a vývoj dávkových souborů by musel pokrýt mnoho nuancí souvisejících s používáním různých možností, jak fungují dávkové soubory v různých verzích Microsoft Windows a tak dále. atd. Navrhovaný článek si nenárokuje úplnost, zejména:

  • nebudeme popisovat různé způsoby, jak dosáhnout stejného výsledku;
  • nebudeme popisovat všechny možnosti a možnosti použití zmíněných příkazů.

Nyní je naším úkolem pomoci těm, kteří tento nástroj zcela nebo téměř neznají, začít zvládat dávkové soubory. Všechny podrobnosti si pak lze přečíst ve firemní dokumentaci nebo v referenčních knihách.

příkazový procesor

Mnoho operačních systémů, včetně těch vyvinutých společností Microsoft, obsahuje příkazový procesor. Toto je název programu, který spouští provádění různých akcí v reakci na příkazy zadané uživatelem z klávesnice. Tyto akce v zásadě spočívají ve spuštění potřebných programů s určitými parametry. Ale nejen; později uvidíme, že některé příkazy jsou prováděny přímo shellem. V podstatě se jedná o příkazy, které slouží ke kontrole kontextu a posloupnosti provádění příkazů. O povaze příkazů se však nebudeme příliš hluboce zamýšlet, alespoň ne zbytečně. Další věc je důležitější: jakýkoli program, který je technicky možné spustit z příkazového řádku, je příkazovým procesorem považován za příkaz. Nerozlišuje mezi "nativními" příkazy, které byly původně zabudovány do operačního systému a programy, které byly nainstalovány nad ním.

Chcete-li spustit příkazový procesor:

  1. Klikněte na tlačítko Start. Na obrazovce se zobrazí hlavní nabídka.
  2. Z hlavní nabídky vyberte Spustit. Na obrazovce se objeví dialogové okno. Spuštění programu.
  3. Do pole Otevřít zadejte řetězec cmd.
  4. Klikněte na tlačítko OK. Na obrazovce se zobrazí okno příkazového procesoru.

Příkazový řádek a příkazy

Okno shellu ve své původní podobě vypadá ponuře a pro většinu lidí se s ním příliš nepracuje. Je mnohem jednodušší používat správce souborů ve stylu Norton Commander. Poskytují jak prostředek pro rychlou navigaci systémem souborů, tak časový limit pro zadávání příkazů.

Chcete-li zadat příkaz:

  1. Zadejte text příkazu na příkazový řádek.
  2. Stiskněte klávesu Vstupte.

Příkazový procesor a příkazy operačního systému jsou popsány v provozní dokumentaci k operačnímu systému. Tato dokumentace je částečně obsažena v samotném operačním systému. Příkaz pro přístup je Pomoc. Tento příkaz zobrazí seznam dostupných příkazů. Chcete-li získat popis konkrétního příkazu jako parametr příkazu Pomoc mělo by být uvedeno její jméno. Příkazový řádek zobrazený v následujícím seznamu zobrazuje popis příkazu pro.

Pomoc pro

Pokud jste se pokusili zadat příkaz Pomoc, pak jste si pravděpodobně všimli, že výsledek jeho práce (tzv. výdej) se nevejde na jednu obrazovku. Stejný problém nastává s textem popisu příkazu pro. Dobrou zprávou je, že výstup lze přesměrovat do souboru. Příkazový řádek zobrazený v následujícím seznamu vygeneruje soubor commands.txt A obsahující seznam všech příkazů MS-DOS.

Nápověda > commands.txt

Chcete-li vygenerovat soubor s popisem příkazu pro, musíte takový příkaz zadat (název výstupního souboru můžete zadat libovolný).

Nápověda pro > for.txt

Celkem je v moderních operačních systémech Microsoftu o něco méně než 80 příkazů a nelze je popsat v jednom článku. Zde můžeme zmínit pouze několik příkazů, které jsou užitečné pro automatizaci zpracování souborů a ukázat vám, jak je používat. Tyto příkazy budou použity později v příkladech. Podrobnosti příkazu můžete vždy zkontrolovat Pomoc nebo v příručce.

kopírovat- kopírování jednoho nebo více souborů;

del- smazání jednoho nebo více souborů;

hýbat se- přesun jednoho nebo více souborů nebo adresářů;

přejmenovat(zkráceně ren) - přejmenovat jeden nebo více souborů nebo adresářů;

xcopy— kopírování stromu podadresářů;

mkdir(zkráceně md) - vytvořit adresář;

rmdir(zkráceně rd) - smazání adresáře.

Jedním z obecných pravidel syntaxe příkazů systému MS-DOS je, že když zadáváte možnosti, zadáváte nejprve zdroj a jako druhý výsledek. Například pokud chceme přesunout soubor pivo.txt z katalogu box do katalogu stůl, musíme zadat příkaz uvedený v následujícím výpisu.

Přesunout tabulku box\pivo.txt

Nejprve co přesunout, pak kam se přesunout.

Pokud chceme přejmenovat soubor lena.txt do souboru natasha.txt, pak by měl být příkaz zapsán tak, jak je uvedeno níže.

Ren lena.txt natasha.txt

Nejdřív co přejmenovat, pak co přejmenovat.

aktuální adresář. Absolutní a relativní cesty

Při práci se souborovými příkazy je koncept aktuálního adresáře nanejvýš důležitý. Faktem je, že při zadávání souboru jako parametru příkazu vždy používáme jeden ze dvou možných způsobů, jak na něj ukázat: buď absolutní cestu, nebo relativní cestu. V úplné cestě zadáváme vše počínaje například jednotkou (nebo síťovým názvem počítače). d:\misha\box\pivo.txt. Bez ohledu na to, který adresář je aktuální v době vydání příkazu, bude úplná cesta odpovídat stejnému souboru. V případě relativní cesty je výchozím bodem aktuální adresář. Nejjednodušším případem relativní cesty je název souboru. V kontextu provádění příkazu to znamená soubor s tímto názvem umístěný v aktuálním adresáři.

Chcete-li zapsat relativní cestu k aktuálnímu adresáři, existuje podmíněný zápis . (tečka). Chcete-li zapsat relativní cestu k adresáři, který obsahuje aktuální adresář, existuje podmíněný zápis .. (dvě tečky). Příkaz zobrazený v následujícím seznamu zkopíruje všechny soubory v aktuálním adresáři do adresáře soused umístěný vedle něj.

Kopírovat *.* .\soused

dávkové soubory

Dosud jsme při uvádění příkladů vycházeli z toho, že pokaždé zadáváme příkazy ručně. Při zpracovávání velkého množství souborů nebo při systematickém provádění stejných příkazů to zatěžuje. Proto příkazový procesor poskytuje možnost spouštět dávkové soubory. Příkazový soubor je textový soubor, do kterého se zapisují příkazy (nebo alespoň jeden příkaz). Příklad dávkového souboru je uveden v následujícím seznamu. Zkuste uhodnout, co dělá tento dávkový soubor.

Help copy > copy.help help move > move.help md msdos-help move *.help msdos-help

Pokud pro vás zůstává účel tohoto souboru záhadou, zkuste jej skutečně vytvořit a spustit. Dávkové soubory mají obvykle příponu netopýr. Podle něj jsou soubory tohoto typu rozpoznávány příkazovým procesorem. Tento soubor lze nazvat např. make-help.bat.

Chcete-li spustit dávkový soubor:

  1. Zadejte jeho jméno jako příkaz. Poté se spustí dávkový soubor.

V dávkovém souboru každý příkaz zabírá jeden řádek. Přesněji řečeno, existuje způsob, jak umístit jeden příkaz na několik po sobě jdoucích řádků, proto bezprostředně před každý konec řádku vložte symbol "cap" ^ . (Každé velké písmeno musí být posledním znakem na svém řádku; za ním nesmí být žádné mezery ani tabulátory.) Příklad takového příkazu je uveden v následujícím seznamu.

Pokud existuje soubor disser.txt ^ zkopírujte soubor disser.txt ^ d:\science\papers\drafts\sources

Ale pro jednoduchost, abychom nedělali pokaždé výhrady, budeme předpokládat, že se v určitém smyslu jedná o jednu dlouhou „logickou“ řadu.

Při spouštění dávkového souboru jej shell prohledá shora dolů od prvního řádku po poslední a provede příkazy v pořadí, v jakém je najde. Provádí je jako celek, jako bychom každý zadávali ručně. Obecně proto, že některé příkazy se chovají mírně odlišně při ručním zadávání a při provádění z dávkového souboru.

Při pohledu dopředu řekněme, že v případě potřeby lze změnit pořadí provádění příkazů pomocí řídicích příkazů (s čím může být tato potřeba spojena, je samostatná otázka).

Nezaměňujte aktuální adresář s adresářem, ve kterém je umístěn spouštěný dávkový soubor. Předpokládejme, že aktuální adresář je práce, obsahuje adresář nástroje a adresář tools obsahuje dávkové soubory. Jeden z nich spustíte příkazem tools\collect-images.bat. Takže "z pohledu" tohoto dávkového souboru bude aktuální adresář stále práce, ale ne nástroje.

Zakomentování dávkového souboru a jeho vydání. příkazy echo a rem

Dávkový soubor je v podstatě program napsaný v jazyce shellu operačního systému. Text programu by měl být opatřen komentářem, aby si člověk po čase, kdy se k němu vrátí, bolestně nevzpomínal, k čemu tento program je a jak funguje.

Příkazový systém MS-DOS poskytuje příkaz pro formátování komentářů. rem. Toto je fiktivní příkaz, který nezahrnuje provádění žádných akcí, ale umožňuje vám napsat libovolný text do řádku za vaším jménem. Navíc to příkazový procesor nevnímá jako chybu syntaxe. Příklad formátování dávkového souboru s komentáři je uveden v následujícím seznamu.

Rem ******************************************************* ******** **** rem Generování souborů nápovědy pro kopírování a přesun příkazů rem **************************** ******** ***************** rem Generovat soubory nápovědy nápověda kopírovat > copy.help nápověda přesunout > move.help rem Vytvořit adresář pro ukládání souborů nápovědy md msdos -help rem Přesunout soubory nápovědy do připraveného adresáře přesunout *.help msdos-help

Všimněte si prázdných řádků, které rozdělují dávkový soubor na "odstavce". Tento jednoduchý trik činí dávkový soubor čitelnějším.

Při provádění výše uvedeného dávkového souboru se všechny příkazy zobrazí na obrazovce tak, jak jsou prováděny, což není vždy vhodné. Vydávání příkazů lze zakázat pomocí příkazu @echo vypnuto. Symbol "pes" před povelem echo znamená, že tento příkaz sám o sobě musí být proveden v "tichém" režimu. Příkazový řádek bychom také nemuseli používat echo vypnuto, ale před každý povel dejte "psa".

V mnoha případech chcete, aby dávkový soubor zobrazoval určité zprávy na obrazovce (nebo do souboru). V některých případech se může jednat o chybová hlášení, v jiných o informační zprávy vysvětlující uživateli dávkového souboru, co se právě děje, někdy s dávkovým souborem vytvoříme nějaký další užitečný soubor. Stejný příkaz echo se používá k zobrazení zpráv. Jako parametr je předán text výstupní zprávy. Seznam vylepšeného dávkového souboru je uveden níže.

@echo off rem ******************************************************** ***** ******** rem Generování souborů nápovědy pro kopírování a přesun příkazů rem **************************** ****** ******************** @echo Generování souborů nápovědy. Jen vteřinu... rem Vygenerovat soubory nápovědy nápověda kopírovat > copy.help nápověda přesunout > move.help rem Vytvořit adresář pro ukládání souborů nápovědy md msdos-help rem Přesunout soubory nápovědy do připraveného adresáře přesunout *.help msdos-help echo Hotovo!

Předávání parametrů do dávkového souboru

Předpokládejme, že chceme vytvořit dávkový soubor, který nejprve vygeneruje nápovědu popisující uživatelsky zadaný příkaz a poté jej načte pro zobrazení v poznámkovém bloku. Trik je v tom, abychom při příštím spuštění dávkového souboru nějakým způsobem sdělili, který příkaz nás tentokrát zajímá.

K vyřešení tohoto problému je poskytnut mechanismus zpracování parametrů. Funguje to docela jednoduše. Pokud při spouštění dávkového souboru uživatel zadal několik parametrů, pak v textu dávkového souboru označíme první z nich záznamem %1 , druhý záznam %2 , třetí záznam %3 atd. Tato označení používáme v textu dávkového souboru přibližně stejně jako v přirozené řeči se zájmeny.

Text dávkového souboru, který řeší problém, je uveden v následujícím seznamu. Věnujte pozornost týmu Pomoc. První parametr dávkového souboru je předán jako jeho parametr.

@echo off rem Vytvoříme soubor s popisem příkazu rem, jehož jméno je předáno v parametru help %1 > help.tmp rem Načtěte soubor s popisem do editoru poznámkového bloku notepad help.tmp

Předpokládejme, že jsme tomuto dávkovému souboru dali jméno show-help.bat. Chcete-li načíst popis příkazu do poznámkového bloku, např. dir, musíme příkaz zadat následovně.

Show-help.bat rež

Následující dávkový soubor vytvoří adresář se jménem zadaným v prvním parametru a zapíše do něj soubor obsahující popisný text pro příkaz zadaný v druhém parametru.

Rem Příklad dávkového souboru se dvěma parametry rem Vytvořte adresář s názvem daným prvním parametrem md %1 rem Vytvořte v něm soubor s popisem příkazu daného druhým parametrem rem help %2 > %1\ %2.pomoc

Co se stane, když uživatel při spuštění tohoto dávkového souboru nezadá dva, ale čtyři parametry? Nevadí, nebudou ničemu překážet, jen se nepoužijí. Co se stane, když uživatel zadá pouze první parametr? Druhý parametr bude prázdný. Efekt bude následující: dávkový soubor bude spuštěn, ale jakoby v místě záznamu %2 nic tu není. Příkaz help vygeneruje seznam všech příkazů a vloží jej do souboru s prázdným názvem a příponou .help. Pokud uživatel spustí tento soubor bez zadání jediného parametru, pak když se příkazový procesor pokusí příkaz provést md(připomeňme, že je to pro vytvoření adresáře), dostaneme chybovou zprávu syntaxe, protože příkaz md musí mít parametr.

Použití parametrů tedy vytváří velké příležitosti, ale může věci výrazně zkomplikovat. Aby dávkový soubor vždy správně fungoval, je nutné zkontrolovat správnost uživatelem zadaných parametrů a nějak reagovat na neúplné nebo nesprávné vstupní údaje. To samozřejmě nemůžete udělat, ale nesprávně fungující dávkový soubor může rozbít dříví, zvláště pokud jde o mazání nebo přepisování dat.

Proměnné. nastavit příkaz

Proměnná je pojmenovaná hodnota. V učebnicích programování je proměnná obvykle přirovnávána k obálce, na které je napsáno jméno. Do obálky můžete vložit něco, například určitou částku peněz - to je její hodnota. Stejně jako u obálky lze změnit hodnotu proměnné.

Chcete-li deklarovat proměnnou a zároveň jí přiřadit hodnotu, použijte příkaz soubor. Příklad položky pro tento příkaz je uveden v následujícím seznamu.

Kompilátor souboru nápovědy Rem ve formátu CHM set help_compiler=c:\HTML Help Workshop\hcc.exe

Chcete-li extrahovat hodnotu proměnné, její název je umístěn mezi dvě znaménka procenta, jak je znázorněno níže.

Kompilátor souboru nápovědy Rem ve formátu CHM set help_compiler=c:\HTML Help Workshop\hcc.exe rem Projekt souboru nápovědy sady modulu "Sklad" store_hpj=help\sources\store\store.hpj rem Projekt souboru nápovědy "Prodeje" " module " set sales_hpj=help\sources\sales\sales.hpj rem Kompilace souborů nápovědy %help_compiler% %store_hpj% %help_compiler% %sales_hpj%

Níže uvedený seznam ukazuje užitečnost proměnných.

Za prvé umožňují místo dlouhého fragmentu (například cesty k kompilátoru souboru nápovědy) použít v dávkovém souboru synonymní krátký. Alespoň je to pohodlné.

Za druhé vám umožňují vyhnout se opakování fragmentů v textu dávkového souboru, které se mohou v budoucnu změnit. Představte si, že jsme přeinstalovali Microsoft HTML Workshop do jiného adresáře. Pokud je proměnná použita v dávkovém souboru k zápisu cesty k ní, pak bude stačit opravit pouze jeden řádek v dávkovém souboru, a to ten, ve kterém je přiřazena hodnota proměnné help_compiler. Pokud bychom cestu do kompilátoru psali pokaždé, když je potřeba jej zavolat, pak bychom po změně cesty museli každý takový řádek opravit. V uvedeném příkladu jsou dva, ale ve skutečném projektu jich může být stejně dobře pět nebo patnáct, podle počtu souborů nápovědy, které chceme zkompilovat. Problém není v tom, že by ruční oprava každého řádku byla obtížná (ostatně nikdo nezrušil příkazy „kopírovat“ a „vložit“), ale v tom, že to značně zvyšuje pravděpodobnost náhodné chyby.

Parametry dávkového souboru jsou také proměnné, ale liší se od běžných proměnných v tom, že jejich hodnoty se nastavují při spuštění dávkového souboru. V dalším, když budeme hovořit o proměnných, zejména o práci s jejich hodnotami, budeme mít na mysli také parametry dávkového souboru, alespoň pokud k tomuto skóre neexistují výslovné výhrady.

Při psaní dávkových souborů se často používá následující trik: několik proměnných hodnot je uvedeno vedle sebe (nebo je proloženo nějakými znaky nebo řádky), aby se získala nějaká nová smysluplná hodnota. Příklad je uveden v následujícím seznamu.

Rem Cesta k souboru nápovědy kompilátor set help_compiler="c:\Program Files\HTML Help Workshop\hhc.exe" rem Cesta k adresáři, kde jsou umístěny projekty souboru nápovědy set project_path=e:\work\projects\help-projects rem Voláme kompilátor pro zpracování konkrétního projektu, rem, jehož jméno je předáno v prvním parametru %help_compiler% %project_path%\%1.hpj

Zkontrolujte podmínky a vyberte možnosti. příkazy if a goto

Příkaz if umožňuje vybrat skupiny příkazů v souboru příkazů, které se provedou nebo nespustí v závislosti na určitých podmínkách. K čemu to je?

Kontrola stavu je téměř nezbytným opatřením při vytváření dávkových souborů, které používají parametry. Před zahájením práce se musí dávkový soubor, obecně řečeno, ujistit, že mu byla předána správná sada parametrů. V opačném případě existuje vysoké riziko, že bude proveden nesprávně nebo bez výsledků a uživatel bude muset pouze hádat, v čem je problém. Navíc, pokud dávkový soubor smaže, přesune nebo přepíše jakákoli data, pak s nesprávnými parametry může dokonce způsobit poškození.

Následující seznam ukazuje známý dávkový soubor kompilace souboru nápovědy. Na začátek dávkového souboru byla přidána kontrola neprázdnosti prvního parametru. Věnujte pozornost této syntaxi: pro operaci porovnání se používá dvojité znaménko rovná se. Pokud první parametr není prázdný, provede se příkaz goto, který „hodí“ shell na zadaný popisek. V tomto případě je název tohoto štítku kompilován. Všimněte si, že tam, kde se popisek objeví, před jeho názvem je dvojtečka, ale ne v příkazu goto. Pokud je první parametr prázdný, shell přeskočí na další řádek, což vyvolá chybovou zprávu. A pak na další, který to hodí až na úplný konec souboru na štítek s názvem Dokončit.

@echo off rem Zkontrolujte, zda je parametr nastaven, pokud ne "%1"=="" goto kompilovat rem Pokud je parametr prázdný, vydejte chybovou zprávu echo Název projektu souboru nápovědy rem není zadán a přejděte na konec z dávkového souboru rem na štítek dokončit goto finish rem Toto je štítek nazvaný kompilovat:kompilovat rem Níže jsou uvedeny kompilační příkazy rem Cesta k souboru nápovědy kompilátoru help_compiler="c:\Program Files\HTML Help Workshop\hhc.exe " rem Cesta k adresáři, kde jsou umístěny projekty nápovědy soubory set project_path=e:\work\projects\help-projects rem Zavoláme kompilátor ke zpracování konkrétního projektu, rem jehož jméno je předáno v prvním parametru %help_compiler% % cesta_projektu%\%1.hpj rem Toto je označení s názvem finish:finish

Přiznejme si, že navrhovaná metoda kontroly parametru není nejúspěšnější.

Za prvé, pokud uživatel omylem zadá jako parametr neexistující název souboru, bude dávkový soubor uspokojen a pokusí se o kompilaci. Správnějším způsobem je zkontrolovat, zda takový soubor skutečně existuje. K tomu poskytuje příkazový jazyk MS-DOS speciální slovo existovat. Takže by bylo lepší napsat: pokud existuje %1.hpj goto kompilovat.

Za druhé, aktivní používání příkazu jít do(tzv. nepodmíněný skok) a popisky značně matou kód. Technicky nejsou vůbec špatné, ale ladění a údržba dávkového souboru napsaného tímto stylem je poněkud nepohodlná. Proto programátoři dlouho považovali nepodmíněný skok za nežádoucí techniku. Níže je správnější, z hlediska stylu programování, strukturovaná verze, která využívá konstrukci kdyby…jinak. Funguje to takto: pokud je podmínka pravdivá, následují příkazy v závorkách -li, a pokud je nepravda, pak v závorkách za jiný.

@echo off rem Zkontrolujte, zda je parametr nastaven, pokud neexistuje %1.hpj (rem Pokud je parametr prázdný, dejte chybovou zprávu echo Tento projekt souboru nápovědy neexistuje.) else (rem Níže jsou uvedeny kompilační příkazy rem Cesta k kompilátor souboru nápovědy set help_compiler="c:\Program Files\HTML Help Workshop\hhc.exe" rem Cesta k adresáři, kde jsou umístěny projekty souboru nápovědy set project_path=e:\work\projects\help-projects rem Zavolejte kompilátor zpracovat konkrétní projekt, rem, jehož jméno je předáno v prvním parametru %help_compiler% %project_path%\%1.hpj)

Dávejte pozor na odsazení od levého okraje. Jsou volitelné, ale činí text dávkového souboru čitelnějším.

Zde je další příklad práce s kontrolami. Následující dávkový soubor vytvoří adresář s názvem soubory nápovědy(předpokládejme, že do něj uvolníte kompilované soubory nápovědy). Současně, pokud adresář s tímto názvem již existuje (a pravděpodobně obsahuje staré soubory nápovědy, o které byste nechtěli přijít: co když ty nové dopadnou hůř?), dávkový soubor přiřadí příponu bak to. Ale pokud adresář help-files.bak již existoval, pak jej dávkový soubor smaže (předpokládáme, že nám stačí jedna záloha).

Pokud existují help-files.bak rd help-files.bak pokud existují soubory nápovědy ren soubory nápovědy help-files.bak md soubory nápovědy

Hromadné zpracování souborů. pro velení

Příkaz for vám umožňuje organizovat provádění opakovaných akcí stejného typu. Můžete jej použít k zobrazení čísel od jedné do deseti, jak je uvedeno v následujícím seznamu.

Pro /l %%i v (1,1,10) udělejte echo %%i

Variabilní i volal počítadlo cyklů. Vzhledem ke zvláštnosti syntaxe příkazu pro, název čítače smyčky musí být jedno písmeno. Navíc, pokud píšeme dávkový soubor, pak musí být před názvem čítače smyček umístěn znak dvojitého procenta, ale pokud příkaz napíšeme jednoduše na příkazový řádek, pak jeden.

Logika tohoto příkazu je následující. Po slově v je specifikován rozsah počítadla cyklů. V této verzi příkazu se jedná o trojici čísel: počáteční hodnotu čítače, krok počítání, mezní hodnotu čítače. Při provádění příkazu se shell nejprve přiřadí proměnné i význam 1 , a pak se v každém kroku smyčky zvýší o 1 dokud nepřekročí 10 . Je zřejmé, že takových kroků bude deset. Pokud jsme jako krok počítání zadali číslo 2 , pak by se smyčka provedla pětkrát. V každém kroku smyčky se provede tělo smyčky, napsané za slovem dělat. Ve výše uvedeném příkladu se jedná o příkaz echo, který vypíše aktuální hodnotu čítače smyčky na obrazovku.

Pravděpodobně můžete přijít na situaci, kdy je něco takového skutečně vyžadováno, ale obvykle příkaz pro používá se pro iteraci a zpracování souborů. Musím říci, že v poměrně jednoduchých případech se hromadné zpracování souborů provádí pomocí zástupných znaků. Pokud chceme příponu všech souborů v aktuálním adresáři nahradit .htm na .html, zadáme příkaz ren *.htm *.html. Ale pokud je třeba totéž udělat ne v jednom adresáři, ale ve stromu adresářů, pak je příkaz for nepostradatelný. Následující dávkový soubor provede tuto operaci se všemi soubory .htm v podadresáři webu aktuálního adresáře. Přesněji v celém adresářovém stromu, který je uvnitř webová stránka.

Pro /r web %%i v (*.htm) proveďte ren %%i %%~ni.html

Klíč /r označuje potřebu procházet adresář webová stránka a všechny jeho vnitřnosti. Pokud není zadán (ale pak nelze zadat ani adresář), budou zpracovány pouze soubory v aktuálním adresáři. Rozsah hodnot pro čítač cyklů v této verzi příkazu je sada všech souborů s příponou .htm, umístěný uvnitř adresáře (přesněji stromu) webová stránka. Na první pohled zvláštní ~ni znamená, že z hodnoty proměnné i je třeba zvýraznit pouze název souboru. Příkazový jazyk MS-DOS poskytuje několik takových modifikátorů, jako je psaní ~xi označuje příponu souboru. Všechny modifikátory jsou popsány v nápovědě k příkazu. pro.

Tělo smyčky se může skládat z několika příkazů uzavřených v závorkách.

@echo off pro /r web %%i v (*.htm) do (rem Tisk názvu souboru echo %%i rem Přejmenovat soubor ren %%i %%~ni.html)

Přeneste řízení do jiného dávkového souboru. zavolat příkaz

Z jednoho dávkového souboru je možné vyvolat další dávkový soubor. K tomu příkaz volání. Je pozoruhodné, že proměnné nastavené ve volajícím dávkovém souboru jsou pro volaného "viditelné". A naopak, poté, co volaný soubor dokončí svou práci a vrátí řízení volajícímu, ten „uvidí“ proměnné, které mu zanechané volaným „děděním“. To umožňuje vývojáři dávkových souborů jednat například následovně. Pokud musí několik dávkových souborů používat stejné hodnoty, řekněme cesty k některým souborům, lze je přesunout do samostatného dávkového souboru, který bude hrát roli konfiguračního souboru. Každý pracovní dávkový soubor bude začínat voláním konfigurace. Výhodou je, že když změníte cesty, musíte provést změny pouze v jednom konfiguračním souboru a ne u mnoha pracovníků.

dávkový soubor "konfigurace". config.bat.

Rem Cesta k souboru nápovědy kompilátor set help_compiler="c:\Program Files\HTML Help Workshop\hhc.exe" rem Cesta k adresáři, kde jsou umístěny projekty souboru nápovědy set project_path=e:\work\projects\help-projects

"Pracovní" dávkový soubor.

@echo off rem Nastavení proměnných volání config.bat rem Zkontrolujte, zda je parametr nastaven, pokud neexistuje %1.hpj (rem Pokud je parametr prázdný, dejte chybovou zprávu echo Tento projekt souboru nápovědy neexistuje.) else (rem Níže jsou kompilační příkazy rem Zavoláme kompilátor ke zpracování konkrétního projektu, rem, jehož jméno je předáno v prvním parametru %help_compiler% %project_path%\%1.hpj)

Soubory BAT jsou textový dokument se speciální příponou. Zapisují se do něj příkazy pro jejich následné provádění na příkazovém řádku. Spuštěním souboru aktivujete program CMD, čte příkazy, které jsou postupně prováděny. Tímto způsobem si můžete usnadnit práci s příkazovým řádkem a přitom zachovat požadované pořadí. Všechny příkazy můžete samozřejmě do příkazové řádky zadat ručně, pokud však potřebujete opakovat stejné operace, je mnohem pohodlnější to provést spuštěním automatického čtení seznamu zapsaného ve tvaru netopýra dokument. Tato možnost je praktická a pohodlná i v tom, že objednávku můžete později změnit, doplnit o nové procesy, které potřebujete, a také odstranit nepotřebné.

BAT pomáhá automatizovat procesy: spouštění programů, archivace, zálohování. Proto je užitečné vědět, jak si netopýří soubor sami vytvořit, opravit a doplnit.

Práce s bat přes Poznámkový blok

Algoritmus vytváření

Proces práce přes Poznámkový blok není nijak složitý. Pokud jste to nikdy předtím neudělali, můžete to udělat docela dobře, když se naučíte, jak vytvořit soubor bat a přidávat do něj příkazy. Začněme tvorbou. Zde postupujte přísně podle algoritmu:

  1. Vytvořte textový dokument, zpočátku jej získáte s příponou txt. Tuto operaci můžete provést několika způsoby, některé závisí na úrovni instalovaného systému Windows:
    • Ve složce, kterou jste si vybrali, klikněte pravým tlačítkem na pole, otevře se nabídka, vyberte "Vytvořit" - "Textový dokument";
    • Spusťte "Poznámkový blok" přes "Start" výběrem "Všechny programy" - "Příslušenství" - "Poznámkový blok" (pro Windows 7);
    • V pozdějších (po 7) verzích Windows můžete Poznámkový blok otevřít také přes "Start": projděte "Všechny aplikace", potom "Standardní" - "Windows" a v seznamu vyberte "Poznámkový blok";
    • Vyvolejte systémové příkazové okno pomocí kombinace Win + R, do řádku zadejte "notepad" a klikněte na "OK".
  2. Zadejte text příkazu. Pro test si zapište např. "START taskmgr.exe" - spuštění správce úloh. "START" říká interpretu příkazů, aby spustil program, po kterém následuje spustitelný soubor programu.
  3. Zadejte cestu, kam se má vytvořený dokument uložit.
  4. V okně pro uložení zadejte:
    • v řádku "Typ" - "Všechny soubory";
    • do řádku "Jméno" zadejte jméno a příponu netopýra, přidejte jej za jméno, mezi jméno a příponu vložte tečku, např. "soubor.bat".
  5. Klikněte na "Uložit".

V zadané složce se objeví dávkový soubor s příponou .bat.

Spuštění souboru

Soubor bat je snazší otevřít dvojitým kliknutím myši na něj. Druhým způsobem je spuštění z příkazového řádku: zadejte adresu, kde se nachází dokument s příponou .bat, který jste uložili.

Editace

Pokud chcete změnit dokument - přidat příkazy do souboru bat, některé z nich odstranit, zadat jiný program pro následnou práci s ním - to není obtížné. Otevřete dokument pomocí textového editoru. Je vhodné to provést kliknutím pravým tlačítkem myši na soubor bat a v nabídce, která se otevře, vyberte „Upravit“. Spustí se Poznámkový blok - tam můžete upravovat příkazy, měnit obsah, doplňovat.

Aplikace Dr.Batcher

Pro začátečníka, který s překladačem příkazů teprve začíná pracovat, který jej používá poměrně zřídka, stačí Poznámkový blok. Pokud se chcete dostat na vyšší profesionální úroveň, doporučujeme využít utilitu Dr.Batcher. V Dr.Batcher můžete číslovat stránky, nechybí podpora záložek, seznam systémových příkazů používaných v bat, zadané příkazy jsou zvýrazněny.

Vytvoření dokumentu

Algoritmus je jednoduchý, nevyžaduje speciální dovednosti a profesionalitu. Stažením nástroje můžete rychle udělat vše, co potřebujete.

Spusťte Dr. Batcher.

  1. Otevřete novou stránku: "Soubor" - "Nový" nebo klikněte na ikonu prázdného listu umístěnou v nabídce "Soubor".
  2. V dialogovém okně klikněte na „Vyprázdnit dávkový soubor“.
  3. Vytvoří se okno programu, kde budou funkce pro práci s bat.
  4. Po zadání požadovaného textu uložte.

Editace

Pokud potřebujete změnit soubor bat, Dr.Batcher to udělá několika způsoby:

  1. Klepněte pravým tlačítkem myši na ikonu a z nabídky vyberte "Upravit pomocí Dr.Batcher".
  2. Spusťte Batcher. Otevřete požadovaný soubor bat podle cesty:
  • "soubor";
  • "otevřeno";
  • zadejte cestu k dokumentu;
  • "Otevřeno".

Po jedné z navrhovaných cest otevřete obslužný program, v okně bude text, kde můžete provádět úpravy, měnit příkazy, doplňovat je a mazat nepotřebné.

Soubor Bat je užitečný, když potřebujete automatizovat úkoly ve Windows. Zejména pokud je nutné provádět akce několikrát (periodicky nebo za sebou) v určitém algoritmu. To je obvykle vyžadováno při vytváření adresářového systému, při hromadném přejmenovávání souborů a dalších jednoduchých i složitějších operacích. Po uložení pořadí akcí můžete rychle a bez zbytečné ztráty času pro ruční zadávání příkazů proces spustit kdykoli, opakovat jej pro různé programy a do hotového textu přidat pouze jejich název. Výše uvedená doporučení, jak vytvořit soubor bat, vám pomohou nejen je vytvořit sami, ale také je upravit.

V procesu práce s operačním systémem Windows může být nutné zacyklit příkazy DOS, vytvořit víceúrovňový cyklus opakujících se akcí nebo programů, automatizovat pracovní postup pomocí nástrojů a souborů, ručně nebo bez zásahu uživatele.


Pro tyto účely jsou určeny speciální typy souborů, kterým je přiřazena přípona bat, ve které je předepsána určitá sada příkazů, jejichž cyklické provádění je potřeba vytvořit. Vytvořením takového souboru a zapsáním potřebných příkazů do něj a jeho přidáním do systémového plánovače úloh tedy můžete tento proces implementovat zcela automaticky bez zásahu uživatele.

Hlavní výhodou bat souborů je, že do nich není potřeba psát žádný programový kód, takže s nimi může pracovat i začínající uživatel. Vše, co je potřeba k vytvoření takového souboru, je zadat počáteční informace, které budou prováděny procesy DOS. Tento proces je navíc implementován stejným způsobem na všech verzích Windows. Příkladem je systémový soubor autoexec.bat, který obsahuje seznam všech služeb a aplikací, které by se měly spouštět při startu Windows.

Soubory BAT: hlavní funkce

V závislosti na implementovaných funkcích jsou soubory bat rozděleny do několika typů:

- informační, které jsou zodpovědné za zobrazení určitých informací na displeji;
- pracovníci, s jejichž pomocí jsou spouštěny dávkové dokumenty;
- cyklický, určený k vytváření pracovních cyklických procesů;
- víceúrovňové, které jsou zodpovědné za hierarchické provádění systémových příkazů za použití stanovených podmínek;
- software, který vám umožní pracovat s nástroji.

Spouštění souborů bat

Spouštění dávkových souborů můžete spustit několika způsoby. Jedním z nejjednodušších je příkazový řádek, do kterého stačí napsat název souboru bat. V tomto případě jsou povoleny i další parametry. Jakmile jsou všechny soubory specifikovány, jejich implementace proběhne automaticky v pořadí zadaném uživatelem.

Pokud jsou soubory bar-soubory uloženy v různých adresářích, budete muset kromě názvu zadat i úplnou cestu k nim. V tomto případě není nutné uvádět příponu. Předpokládejme, že chceme spustit soubor bat s názvem priroda.bat s dalšími parametry resize.doc a /p umístěnými v c:\photogalery\otpusk. Ke spuštění souboru tedy stačí napsat na příkazový řádek příkaz c:\home\photogalery\otpusk resize.doc /p a proces se spustí automaticky.

Přerušení provádění dávkového souboru

Spouštění libovolného dávkového souboru lze zastavit dvojitým kliknutím na klávesu „+“, poté budete muset potvrdit svůj záměr přerušit stisknutím klávesy „Y“, pokud souhlasíte, nebo „N“, pokud si to náhle rozmyslíte. .

Spuštění dalšího bat souboru

Jakýkoli dávkový soubor může fungovat jako pracovník, který aktivuje spouštění jiných souborů bat. K tomu je nutné do těla takového souboru zapsat příkaz CALL, po kterém je uveden název souboru a případně další parametry, které je třeba provést. Pokud tento parametr není zadán, nic se nestane, protože v tomto případě jsou práva přenesena do jiného souboru.
Při zadávání dalších parametrů se pro označení proměnné od jedné do devíti používá symbol "%". Po dokončení provádění všech příkazů začne provádění počátečního skriptu na novém řádku.

Sekvenční provádění

Někdy je nutné postupně spouštět příkazy zapsané v těle dávkového souboru. Nejčastěji se to děje ve fázi ladění a testování výkonu skriptů. Pro konfiguraci provádění krok za krokem se používá příkaz COMMAND, který je napsán na začátku každého řádku. Za tímto příkazem následují proměnné /y/c, název skriptu a další možnosti umístěné v hranatých závorkách.
Na začátku provádění každého nového příkazu bude muset uživatel potvrdit pomocí klávesy Enter nebo Escape.

Ovládání výstupu příkazů na displej

Při spuštění provádění dávkového souboru je uživatel upozorněn pomocí oznamovacího okna, po kterém začne jeho přímé provádění. Tato upozornění však nejsou vždy vhodná, protože velké soubory netopýrů mohou dlouhými upozorněními odvádět pozornost uživatele od jiné práce na počítači. Ale při ladění budou naopak velmi užitečné. Příkaz ECHO slouží k ovládání funkce zobrazování příkazů na displeji a pomocí parametrů ON a OFF lze aktivovat a deaktivovat zobrazování upozornění.

Pokud bylo nutné zakázat výstup na obrazovku jednoho nebo více příkazů, pak na začátek řádku je nutné napsat příkaz @ECHO OFF. Stojí za zmínku, že mnoho kyberzločinců používá takový příkaz ke skrytí činnosti škodlivého softwaru umístěného ve spustitelných dávkových souborech.

Zprávy o provedení příkazu

Pokud je příkaz ECHO napsán špatně a za hlavními parametry jsou v textu příkazu další znaky, pak nebude fungovat a samotný příkaz se zobrazí spolu s textem hlavního upozornění. Za zmínku stojí, že pomocí dávkových souborů můžete dokonce nastavit zvukové upozornění, které bude vydáváno pomocí reproduktoru. Chcete-li to provést, vložte za hlavní postavu číslo 7. Pokud je potřeba zlepšit čitelnost textu upozornění, vložte za ECHO tečku bez použití mezery.

Kromě standardního zobrazení příkazů na obrazovce můžete nakonfigurovat zobrazování výstrah v samostatném souboru. Chcete-li to provést, budete muset nakonfigurovat výstupní cestu, jednoduše nahradit monitor konkrétním souborem. To se také provádí pomocí souborů bat, ve kterých jsou zapsány následující příkazy:

- ECHO-textové upozornění >> název souboru - slouží k přidání řádku zprávy na konec souboru. Pokud zadaný soubor na zadané cestě neexistuje, systém vytvoří nový soubor.
- ECHO-textové upozornění >> název souboru - odpovídá za zápis upozornění do nového souboru. Stojí za zmínku, že pokud zadaná cesta již obsahuje soubor se stejným názvem, bude jeho obsah zcela přepsán.

Pomocí komentářů

Pro pohodlí práce s velkými dávkovými soubory obsahujícími mnoho příkazů je implementována možnost používat komentáře. Chcete-li to provést, musíte na začátek řádku umístit parametr REM, za který se zapíše samotný komentář. Vše po tomto parametru operační systém zcela ignoruje.

Zpoždění spuštění dávkového souboru

Při práci se soubory bat může být nutné dočasně pozastavit proces jejich provádění. To může být například vyžadováno, aby měl uživatel nějaký čas na přečtení výstupního textu nebo na ladění programu. K tomu slouží příkaz PAUSE, který je zapsán bez jakýchkoliv dalších parametrů. Pokud je tedy v dávkovém souboru použit příkaz přerušení, provádění dávkového souboru bude pozastaveno a uživatel obdrží zprávu, že pro pokračování ve vykonávání musí být stisknuta jakákoliv klávesa. Je třeba poznamenat, že dvojité kliknutí na plus bude systémem považováno za zastavení provádění dávkového souboru, což bude vyžadovat potvrzení nebo zrušení uživatelem. Všechny ostatní klíče budou pokračovat v procesu provádění souboru bat.

Sekvenční provádění dávky souborů

Pomocí dávkového souboru můžete nakonfigurovat sekvenční spouštění velkého počtu souborů. Zároveň je k dispozici možnost provedení jménem nebo typem rozšíření. To vám umožní automatizovat práci s velkým množstvím dokumentů, například s ceníky, které dostávají e-maily od dodavatelů. Pro tyto účely je určen příkaz FOR, jehož prováděcí verze vypadá takto:

- FOR %x IN (seznam souborů) příkaz DO, kde:
- x - libovolný abecední znak;
- seznam - všechny soubory mohou být uvedeny s mezerou;
— příkaz – jakýkoli příkaz nebo nástroj systému DOS.

Za zmínku stojí, že při použití příkazu FOR je nutné počítat s tím, že všechny DOSové příkazy a programy mají omezenou délku. Pokud je nutné použít dlouhé názvy, pak tomuto příkazu musí předcházet parametr LFNFOR ON, který aktivuje dlouhé názvy. Chcete-li tento režim deaktivovat, musíte změnit parametr ON na hodnotu OFF.

Některé operace s nástroji, například porovnávání souborů s daným typem přípony umístěných na různých adresách, stejně jako kopírování obsahu jedné složky do druhé, sekvenční spouštění souborů stejného typu a mnoho dalších, lze provádět pouze pomocí jeden příkaz umístěný v dávkovém souboru. Spuštění libovolného příkazu nebo souboru lze zároveň kombinovat s určitými akcemi uživatele, což může výrazně zlepšit pohodlí při práci s velkými datovými pakety.

Skoky v dávkových souborech

Pro systematizaci procesu provádění příkazů v dávkových souborech se používají štítky a přechodové příkazy mezi nimi. Štítky jsou řádky příkazového souboru, před kterými je dvojtečka následovaná názvem, který může obsahovat libovolnou sadu znaků. K oddělení názvu od příkazu se používá mezera. Ke každému štítku si navíc může uživatel vytvořit komentář, což značně zjednodušuje práci s velkými soubory.
Pro konfiguraci přechodu mezi štítky se používá příkaz GOTO, po kterém je název jednoho z štítků označen mezerou. Pokud systém nemohl najít zadaný štítek nebo zadaný parametr, akce skoku u tohoto příkazu skončí.

Použití podmínek v dávkových souborech

Dávkové soubory umožňují pracovat s příkazy, které spadají nebo nespadají pod parametry zadané uživatelem. Chcete-li to provést, použijte příkaz IF, po kterém se zapíše jedna z následujících podmínek;
- Číslo ERRORLEVEL - znamená pravdivost podmínky v případě, že výsledek provedení předchozí aplikace odpovídá nebo překračuje zadanou hodnotu;
- ŘÁDEK 1 == ŘÁDEK 2 - pravdivost hodnoty je implikována, pokud je dosaženo úplné shody mezi dvěma řádky;
- EXIST - název souboru - true se uloží, pokud zadaný soubor existuje;
- NOT - podmínka - skutečná hodnota je dosažena, když zadaná hodnota nesouhlasí.

Jaké příkazy se používají v souborech bat?

Chcete-li získat seznam všech příkazů, které jsou povoleny v dávkových souborech, musíte spustit příkazový řádek, napsat HELP a stisknout klávesu Enter. Poté se na displeji monitoru zobrazí seznam všech příkazů s malým vysvětlením každého z nich. Pokud potřebujete získat podrobnější popis, pak stačí znovu zadat HELP s názvem příkazu, který vás zajímá.

Obsluha dávkových souborů při zálohování dat

Soubory BAT jsou velkou pomocí při každodenní práci systémových administrátorů, kteří je používají k provádění široké škály úkolů, z nichž nejdůležitější je zálohování dat. Chcete-li tento proces automatizovat ve velké podnikové síti, musíte do dávkového souboru vložit příkaz COPY. Navíc můžete nastavit plán zálohování nejdůležitějších souborů s ukládáním do určeného adresáře jednoduchým vytvořením spouštění tohoto souboru v plánovači Windows v určité dny v týdnu nebo data.

Nyní je čas zvážit bat příkazy. V podstatě se zde používají příkazy zadané v cmd, ale jsou i takové, které nemá smysl používat na příkazovém řádku.

Jak získat úplný seznam příkazů bat

K popisu všech příkazů budete muset napsat několik článků, abyste se příliš nezatěžovali jedním článkem a zvážili kompaktní informace. Jak víte, příkazy souboru bat a cmd jsou stejné pro získání jejich seznamu nebo . Zadejte příkaz help, který je napsán v angličtině jako help, stiskněte Enter. Výsledkem je, že počítač v rozhraní cmd zapíše všechny příkazy se stručným popisem.

Po prostudování tohoto seznamu budete chtít vědět podrobněji, co je konkrétní příkaz bat. Vyberme například příkaz pro, pro jeho popis zadejte help pro nebo pro /? a stiskněte enter. Výsledkem je, že k příkazu obdržíte online nápovědu, je objemná, takže pro přečtení následujícího popisu budete muset několikrát stisknout libovolnou klávesu. Můžete se tak naučit syntaxi konkrétního příkazu.

příkazy souboru bat

Nyní se seznámíme s příkazy použitými v dávkovém souboru se stručným popisem. Nerozlišují se v nich velká a malá písmena, pro usnadnění identifikace jsme je však uvedli velkými písmeny.

@ Všechny spustitelné povely bat se zobrazí na obrazovce, aby se odstranil přebytek, před povel je umístěn „pes“. Často se používá s vypnutým @echo.
souborNastavuje proměnné. Například setper=c:\windows here per je přiřazena cesta. Do proměnné můžete zapsat těžkopádnou hodnotu a zadat ji ve skriptu, díky čemuž bude kód kompaktnější. Pokud se změní její obsah, nebude nutné měnit hodnoty, kde je tato proměnná uvedena.
:: Jedna ze dvou metod komentování v souboru bat bez zobrazení tohoto řádku na obrazovce.
:OZNAČENÍKdyž ke slovu přidáte dvojtečku, vytvoří se štítek, který vám umožní přeskočit na různé části dávkového souboru. Štítek může mít jiný název, LABEL je příklad.
VOLÁNÍBat je příkaz, který volá jeden dávkový soubor v jiném. Všechny parametry popsané v jednom ze souborů si lze navzájem předávat.
VÝBĚRVýběrový příkaz.
CLSVymaže obsah shellu, který je zobrazen nad CLS.
ECHOZobrazí zprávu na obrazovce. Například "ECHO Ahoj!" vytiskne "Ahoj!". Pokud na začátku dávkového souboru nepoužijete @ECHO vypnuto, uvidíte cestu k souboru bat a dvě zprávy, což je nadbytečné. Prázdný řetězec můžete vytvořit zadáním ECHO. s tečkou na konci.
VÝSTUPUkončí aktuální dávkový skript.
PŘEJÍT NA ŠTÍTEKPoužívá se ke skoku na konkrétní štítek, v tomto případě LABEL, a ke spuštění skriptu za ním.
LIStejně jako v programovacích jazycích představuje příkaz bat splnění podmínky, podle které se skript vydá tak či onak. Viz nápověda pro syntaxi.
proSmyčka používaná k organizaci provádění stejných akcí.
PAUZAPokud chcete vidět výsledek skriptu, který běží a okno se rychle zavře, použijte PAUSE. Umožní vám vidět výsledek a dokončit skript stisknutím libovolného tlačítka.
REMDruhý způsob komentování. Na rozdíl od:: se vytiskne na obrazovce, pokud neexistuje konstrukt @ECHO off.
POSUNZmění pozici parametrů dávky v souboru bat.
STARTSpouští programy, okna atd. Má mnoho atributů (viz nápověda).

To je základ příkazů bat. Syntaxe některých prvků je pro začátečníky obtížná a vyžaduje určité znalosti. Všechno příkazy souboru bat, popsané výše, jsou zvažovány povrchně, abychom zjistili jejich účel, a úplnou syntaxi najdete v nápovědě Windows.



Související články: