Какво е BAT файл?
BAT файлът е известен като пакетен файл, който се изпълнява с DOS и всички версии на Windows под cmd.exe. Състои се от поредица от редови команди в обикновен текст, които да бъдат изпълнени от интерпретатора на командния ред за изпълнение на различни задачи, като например стартиране на помощни програми за поддръжка в Windows или стартиране на типични програми. Пакетният файл може да включва всяка команда, която може да бъде приета от интерпретатора интерактивно и да използва структурата на кода, която позволява условно разклоняване и зацикляне, както е написано в пакетния файл.
BAT файлов формат
Файловият формат BAT е просто скрипт, включен за автоматизиране на командни последователности, които са повтарящи се по природа. Терминът “партида” се използва за пакетна обработка, може да се разглежда като “неинтерактивно изпълнение”. Следователно пакетният файл може да не обработва пакет от множество данни. В старата дискова операционна система (DOS) партидният файл се изпълняваше под интерфейса на командния ред чрез въвеждане на името на файла и разширението .bat. По-ранната операционна система, базирана на графичен интерфейс на Microsoft, като Microsoft Windows, беше зависима от DOS. Потребителите трябваше да използват DOS, за да извършват типични операции като ремонт, оптимизиране или повторно инсталиране на Windows. По-късно Microsoft представи Windows NT, който не беше зависим от операционната система DOS. Следователно пакетните файлове могат да се изпълняват с помощта на командния ред или cmd.exe в съвременните операционни системи на Microsoft.
Параметри на партиден файл
Командният ред поддържа редица специални променливи като %0, %1 до %9, за да препраща към името и пътя на пакетното задание и деветте извикващи параметъра от пакетното задание. Несъществуващите параметри се заменят с низ с нулева дължина. Въпреки това, те могат да се използват подобно на променливите на средата, но не се записват в средата. Microsoft и IBM наричат тези променливи заместващи параметри, докато Novell, Digital Research и Caldera въвеждат термина заместващи променливи за тях.
Ето някои полезни команди за пакетен файл:
Команда | Описание |
---|---|
VER | Тази пакетна команда показва версията на MS-DOS, която използвате. |
ДОЦ. | Това е групова команда, която свързва разширение с тип файл (FTYPE), показва съществуващи асоциации или изтрива асоциация. |
CD | Тази пакетна команда помага при извършване на промени в различна директория или показва текущата директория. |
CLS | Тази пакетна команда изчиства екрана. |
КОПИРАНЕ | Тази пакетна команда се използва за копиране на файлове от едно място на друго. |
DEL | Тази пакетна команда изтрива файлове, а не директории. |
DIR | Тази пакетна команда изброява съдържанието на директория. |
ДАТА | Тази пакетна команда помага да се намери системната дата. |
ЕХО | Тази групова команда показва съобщения или включва или изключва ехото на командата. |
ИЗХОД | Тази пакетна команда излиза от конзолата на DOS. |
MD | Тази пакетна команда създава нова директория в текущото местоположение. |
ПРЕМЕСТВАНЕ | Тази пакетна команда премества файлове или директории между директории. |
ПЪТ | Тази пакетна команда показва или задава променливата на пътя. |
ПАУЗА | Тази пакетна команда подканва потребителя и изчаква да бъде въведен ред за въвеждане. |
PROMPT | Тази пакетна команда може да се използва за промяна или нулиране на подканата cmd.exe. |
RD | Тази пакетна команда премахва директории, но директориите трябва да са празни, преди да могат да бъдат премахнати. |
REN | Преименува файлове и директории |
REM | Тази пакетна команда се използва за забележки в пакетни файлове, предотвратявайки изпълнението на съдържанието на забележката. |
НАЧАЛО | Тази пакетна команда стартира програма в нов прозорец или отваря документ. |
ВРЕМЕ | Тази пакетна команда задава или показва времето. |
ТИП | Тази пакетна команда отпечатва съдържанието на файл или файлове в изхода. |
ОБЕМ | Тази пакетна команда показва етикетите на обема. |
ATTRIB | Показва или задава атрибутите на файловете в текущата директория |
CHKDSK | Тази пакетна команда проверява диска за проблеми. |
ИЗБОР | Тази пакетна команда предоставя списък с опции на потребителя. |
CMD | Тази групова команда извиква друг екземпляр на командния ред. |
КОМП | Тази пакетна команда сравнява 2 файла въз основа на размера на файла. |
КОНВЕРТИРАНЕ | Тази пакетна команда преобразува том от файлова система FAT16 или FAT32 във файлова система NTFS. |
DRIVEQUERY | Тази пакетна команда показва всички инсталирани драйвери на устройства и техните свойства. |
РАЗШИРЯВАНЕ | Тази пакетна команда извлича файлове от компресирани .cab cabinet файлове. |
НАМИРАНЕ | Тази пакетна команда търси низ във файлове или вход, извеждайки съвпадащи редове. |
ФОРМАТ | Тази пакетна команда форматира диск, за да използва файлова система, поддържана от Windows, като FAT, FAT32 или NTFS, като по този начин презаписва предишното съдържание на диска. |
ПОМОЩ | Тази пакетна команда показва списъка с предоставени от Windows команди. |
IPCONFIG | Тази пакетна команда показва IP конфигурацията на Windows. Показва конфигурация по връзка и името на тази връзка. |
ЕТИКЕТ | Тази пакетна команда добавя, задава или премахва етикет на диск. |
ОЩЕ | Тази пакетна команда показва съдържанието на файл или файлове, екран по екран. |
NET | Предоставя различни мрежови услуги в зависимост от използваната команда. |
PING | Тази пакетна команда изпраща ICMP/IP “ехо” пакети по мрежата до определения адрес. |
ИЗКЛЮЧВАНЕ | Тази групова команда изключва компютър или излиза от текущия потребител. |
СОРТИРАНЕ | Тази пакетна команда взема входните данни от изходен файл и сортира съдържанието му по азбучен ред, от А до Я или Я до А. Тя отпечатва изхода на конзолата. |
SUBST | Тази пакетна команда присвоява буква на устройство към локална папка, показва текущите присвоявания или премахва присвояване. |
SYSTEMINFO | Тази пакетна команда показва конфигурацията на компютър и неговата операционна система. |
TASKKILL | Тази пакетна команда завършва една или повече задачи. |
СПИСЪК ЗАДАЧИ | Тази пакетна команда изброява задачи, включително име на задача и идентификатор на процеса (PID). |
XCOPY | Тази пакетна команда копира файлове и директории по по-усъвършенстван начин. |
ДЪРВО | Тази пакетна команда показва дърво на всички поддиректории на текущата директория до всяко ниво на рекурсия или дълбочина. |
FC | Тази пакетна команда изброява действителните разлики между два файла. |
DISKPART | Тази пакетна команда показва и конфигурира свойствата на дисковите дялове. |
ЗАГЛАВЛЕНИЕ | Тази пакетна команда задава заглавието, показвано в прозореца на конзолата. |
КОМПЛЕКТ | Показва списъка с променливи на средата в текущата система. |
Пример за BAT файл
Пакетните скриптове обикновено се записват като прости текстови файлове; съдържащи команди, които се изпълняват в последователност. Тези файлове се записват с разширение .bat; разпознават и изпълняват с помощта на софтуера Command Interpreter. Този софтуер е наличен първоначално в Microsoft Windows с име cmd.exe.
Ето примерен пакетен скрипт, който изтрива всички файлове в текущата директория:
:: Deletes All files in the Current Directory With Prompts and Warnings
::(Hidden, System, and Read-Only Files are Not Affected)
:: @ECHO OFF
DEL . DR