Команды bat файлов: Команды bat-файлов. Как создать bat-файл? Базовые команды :: SYL.ru

Содержание

Все о BAT файлах

Все о BAT файлах

   Пакетные или batch файлы это обычные текстовые файлы, содержащие наборы команд интерпритатора и имеющие расширение bat или cmd (cmd работают только в ОС семейства NT). Редактировать такие файлы можно при помощи блокнота или любого другого текстового редактора.
В этом FAQ собраны рекомендации, которые были протестированы на Windows 2000. Некоторые команды и переменные, использованные при написании примеров, отсутствуют в 9х.

Как создать batch файл? 

Откройте блокнот и наберите две следующих строки:

@echo This batch file
@pause

Выберите Файл - Сохранить как, выберите Тип файла - Все файлы, в поле Имя файла введите 1.bat и сохраните его в корне диска С, например. Теперь откройте диск С и запустите файл 1.bat. На экран будет выведено две строки.

This batch file
Нажмите любую клавишу для продолжения...

После нажатия любой клавиши окно закроется, т.к. bat-файл выполнен.
Обратите внимание, что символ собаки перед каждой командой в bat-файле указывает на то, что саму команду выводить на экран не надо, а нужно вывести только результат ее работы. Чтобы поэкспериментировать удалите символ собаки из начала каждой строки, сохраните и запустите полученный bat файл.


Команды, используемые в bat файлах 
 
Список команд, которые можно использовать в bat файлах, можно просмотреть, введя в командной строке (Пуск - Выполнить - cmd для Windows семейтва NT или Пуск - Выполнить - command для линейки 9х) команду

help

Результат работы help - список доступных команд с краткими пояснениями к ним. Чтобы получить более подробную информацию по интересующей команде введите в командной строке help имя_команды. Например, чтобы получить подробную справку по ключам команды AT выполните следующую команду:

help AT

В результате, на экран будет выведен список ключей для запуска команды AT из bat файла.
Если bat файл исполняется под управлением Windows (не в чистом DOS-е), то из него можно запускать любые приложения или открывать файлы. Например, нужно автоматически открыть лог-файл работы bat файла по завершении его работы. Для этого достаточно включить в bat файл последней строкой следующую команду:

start имя_файла.txt

Результатом выполнения этой команды станет открытие файла имя_файла.txt, а сам bat файл завершит свою работу. Такой способ хорош, если лог-файл небольшого размера, иначе Блокнот откажется его открывать, предложив использовать WordPad. Но эта проблема так же решаема, что и будет показано в дальнейших примерах.


Как автоматизировать запуск bat файлов 
 
Очень часто необходимо автоматизировать запуск bat файлов для выполнения ими рутинных операций. Для запуска bat файлов по расписанию наиболее подходит Планировщик, входящий в стандартную поставку Windows. С это помощью можно очень гибко настроить запуск пакетного файла в определенные дни или часы, с определенным интервалом. Можно создать несколько расписаний и т.д.
Для локального запуска batch файлов можно пользоваться решениями от третьих фирм, благо платных и бесплатных альтернатив стандартному Планировщику великое множество.
Batch файлы так же могут использоваться как логин-скрипты в доменах. При таком их использовании они будут исполняться при каждом входе пользователя в сеть не смотря на его желание. С их помощью можно автоматизировать сбор информации о машинах или о программном обеспечении, установленном на компьютерах пользователей, принудительно менять настройки Windows, устанавливать незаметно для пользователя программное обеспечение и автоматизировать решение других задач, ручное исполнение которых заняло бы очень много времени.


Как создать файл с произвольным именем из bat файла 
 
Для создания файла в процессе выполнения пакетного файла используется символ перенаправления. Он выглядит так:

>

Т.е. чтобы создать файл нужно перенаправить поток с экрана в файл. Сделать это можно при помощи следующей команды:

@echo Start file>C:\1.txt

После выполнения этой команды в корне диска С будет создан текстовый файл со строкой Start file.
При создании файла в его имени можно использовать системные переменные или их части. Например, можно создать файл-отчет о работе bat файла с именем, равным дате запуска bat файла. Для этого можно использовать следующие строки в bat файле.

set datetemp=%date:~-10%
@echo .>%SYSTEMDRIVE%\%DATETEMP%.txt

Эти две строки работают следующим образом. Сначала в памяти создаем переменную datetemp, которой присваиваем 10 символов справа налево от системной переменной DATE. Таким образом, теперь во временной переменной datetemp содержится только текущая дата. Следующией строкой перенаправляем вывод символа точка в файл, имя которого берем из переменной datetemp, а расширение txt указываем явно. Файл будет создан на системном диске компьютера, где выполняется bat файл.
При сборе администратором информации о компьютерах в сети будет удобнее добавить к имени файла имя компьютера. Это легко можно сделать при помощи следующей команды:

@echo .>C:\FolderName\%COMPUTERNAME%. txt

Эта команда в ходе выполнения пакетного файла создаст на диске С текстовый файл с именем того компьютера, на котором выполняется пакетный файл.
Для создания файла с определенным именем можно использовать любые системные переменные, либо создать свои, на основе системных переменных и/или других данных.


Как создать папку из bat файла 
 
Для создания папки используется команда MKDIR или ее сокращенный аналог MD. Для создания папки из bat файла нужно использовать следующую команду:

MD FolderName

После выполнения такой команды будет создана папка FolderName в папке, откуда запущен bat файл. Чтобы создать файл в отличном от запуска bat файла месте, например в корне диска D, используйте явное указание расположения новой папки. Команда будет выглядеть так: 

MD D:\FolderName

При создании папок можно пользоваться системными переменными. Например, можно создать в корне диска D папку с именем текущего пользователя. Для этого понадобится переменная %USERNAME%, а команда будет выглядеть следующим образом:

MD D:\%USERNAME%

Можно еще более усложнить команду и создать папку с именем текущего пользователя на системном диске его компьютера. Команда для этого будет выглядеть так:

MD %SYSTEMDRIVE%\%USERNAME%

При создании папок или файлов можно использовать любые системные переменные или их части. Следующий пример демонстрирует создание на системном диске компьютера пользователя папки с именем равным текущей дате.

set datetemp=%date:~-10%
MD %SYSTEMDRIVE%\%datetemp%

Эта конструкция работает следующим образом.
Первая команда создает в памяти переменную datetemp, которая будет уничтожена по окончании работы bat файла. То тех пор, пока bat файл не закончил свою работу есть возможность оперировать со значением этой переменной. Переменной datetemp присваивается 10 символов справа налево от системной переменной DATE, т.е. от текущей даты. Переменная DATE имеет формат Дн ДД.ММ.ГГГГ. Первые символы слева - имя дня недели и поэтому мы их отбрасываем и присваиваем временной переменной datetemp только текущую дату.
Этим не ограничивается список возможностей при создании папок. Вы можете опрерировать переменными так, как удобно Вам, создавая папки с уникальными, легко читаемыми названиями. Получить список всех переменных можно при помощи команды SET.


Как перенаправить результат выполнения команд в файл

Часто, при выполнении сложного bat файла в автоматическом режиме проверить результаты его работы бывает затруднительно по многим причинам. Поэтому проще записывать результаты работы команд batch файла в текстовый файл (лог-файл). а потом анализировать правильность работы bat файла по этому логу.
Перенаправить результат работы команд bat файла в лог-файл достаточно просто. Далее будет показано, как это можно сделать.
Создайте bat-файл следующего содержания (скопируйте эти строки в Блокнот и сохраните файл с расширением bat):

@echo off
echo Start %time%
echo Create test.txt
echo test>C:\test.txt
echo Copy Test.txt to Old_test.txt
copy C:\test.txt C:\Old_test.txt
echo Stop %time%

Первая строка отключает вывод самих команд. Таким образом, в лог-файл будут записаны только результаты их выполнения.
Вторая строка записывает в лог-файл время начала работы пакетного файла.
Третья строка записывает в лог-файл пояснение того, что следующая команда создаст файл test.txt
Команда из четвертой строки создает файл test.txt с корне диска С. Файл создается для примера. Эта команда записывает в файл C:\test.txt слово test

Пятая строка выводит в лог-файл пояснение, что следующая команда выполняет копирование файла из одного места в другое.
Команда в шестой строке копирует созданный файл C:\test.txt в файл C:\Old_test.txt, т.е. создается копия файла под новым именем.
Последняя, седьмая строка содержит команду вывода времени завершения работы пакетного файла. В сумме с записью в лог-файл времени начала работы пакетного файла эти два значения времени дают возможность оценить время работы пакетного файла.

Сохраните этот пакетный файл под именем, например, 1.bat
Предположим, что отчет о работе пакетного файла мы бы хотели хранить в отдельной папке и каждый день записывать отчет с новым именем файла, чтобы была возможность в любой из дней обратиться к логам за предыдущие дни. Причем, имя лог-фала хотелось бы иметь в виде даты работы пакетного файла. Чтобы все это реализовать создадим на диске С (например) папку с именем LOG, т.е. полный путь к ней будет выглядеть C:\LOG. Созданный пакетный файл 1.bat будем запускать следующей командой:

1.bat>C:\LOG\%date~-10%.txt

Если пакетный файл будет запускаться из Планировщика, то нужно указать полный путь с bat-файлу. Помните, что если в пути есть пробелы, то надо использовать либо кавычки, либо формат 8.3. Т.е., если путь к bat-файлу C:\Program Files\1.bat, например, то в командной строке Планировщика для запуска bat-файла нужно указать одну из следующих строк:

"C:\Program Files\1.bat">C:\LOG\%date~-10%.txt
C:\Progra~1\1.bat>C:\LOG\%date~-10%.txt

После запуска файла 1.bat в папке C:\LOG будет создан файл с именем, равным дате запуска bat-файла, например, 13.01.2004.txt Это и будет отчет о работе пакетного файла 1.bat
Запуск bat-файла, пример которого показан в первом листинге вверху страницы, указанной выше командой, приведет к созданию лог-файла такого содержания:

Start 19:03:27,20
Create test. txt
Copy Test.txt to Old_test.txt
Скопировано файлов: 1.
Stop 19:03:27,21

Таким образом, для выполнения перенаправления результатов работы bat-файла в лог-файл нужно использовать символ перенаправления > Синтаксис таков:

Путь\ИмяФайла.bat>Путь\ИмяЛогФайла.txt

Расширение лог-файла может быть любым. При желании, отчет о выполнении пакетного задания можно оформить даже в виде страницы html (соответствующие теги могут быть выведены в лог-файл так, как выводились комментарии в примере 1.bat) и скопировать его на корпоративный сервер.


Как автоматически ответить на запрос о подтверждении 
 
Некоторые команды при выполнении требуют подтверждения потенциально опасного действия. Например, такие команды как format или del предварительно запросят подтверждения на дальнейшее выполнение. Если одна из этих команд выполняется в пакетном файле, то запрос на подтверждение остановит выполнение пакетного файла и он будет ожидать от пользователя выбора одного из предложенных вариантов. Причем, если результат выполнение пакетного файла перенаправлен в лог-файл, то пользователь не увидит запроса на подтверждение и batch файл будет выглядеть зависшим.
Для исправления таких неприятностей можно перенаправить нужный ответ в команду. Т.е. выполнить обратное действие для перенаправления вывода результатов работы команды в файл.

Посмотрим на примере как выглядит запрос на подтверждение потенциально опасного действия. Создадим на диске С, например, папку Folder. Создадим в ней или скопируем в нее два любых файла. Далее, откроем командную строку и выполним следующую команду:

del C:\Folder

Эта команда должна удалить все файлы из указанной папки. Но предварительно будет выдан запрос для подтверждения следующего содержания:

C:\Folder\*, Продолжить [Y(да)/N(нет)]?

Выполнение команды будет остановлено до тех пор, пока не будет нажата либо клавиша Y, либо клавиша N. При выполнении пакетного файла в автоматическом режиме, его исполнение остановится.
Чтобы избежать этого используем перенаправление. Перенаправление осуществляется при помощи символа

|

Вертикальная черта говорит о том, что вместо вывода символа на экран его надо «отдать» следующей за символом команде. Проверим работу перенаправления. Выполните в командной строке следующую команду:

echo Y|del C:\Folder

На экране будет показан запрос на подтверждение удаления всех файлов в папке Folder, но уже с положительным ответом (Y). Все файлы из папки Folder будут удалены.
Будьте осторожны с этой командой.


Как отключить вывод на экран команд при выполнении пакетного файла 
 
При выполнении пакетного файла на экран, помимо результатов работы команды, выводятся и сами команды. Чтобы отключить вывод команд, можно использовать символ @.
Чтобы не выводить на экран одну команду, можно поставить знак @ в начале этой команды.

echo Testing

Эта команда выведет на экран команду echo Testing, а на следующую строку - результат ее работы, слово Testing.

@echo Testing

Эта команда выведет на экран только результат работы команды, т. е. слово Testing. Сама команда выведена не будет.
Если на протяжении выполнения всего файла выводить команды на экран не нужно, то проще первой строкой в пакетном файле написать следующую команду:

@echo off

Эта команда отключит вывод команд на экран на протяжении выполнения всего пакетного файла. Чтобы сама команда не выводилась, она начинается с символа @.


Как из одного bat-файла запустить другой 
 
Иногда, при выполнении пакетного файла, возникает необходимость запустить другой пакетный файл. Причем, в некоторых случаях, выполнение основного пакетного файла должно быть приостановлено, пока выполняется вспомогательный файл, а в других вспомогательный файл должен работать параллельно с основным.
Для примера создадим два bat файла. Один с именем 1.bat и содержащий всего одну команду

call 2.bat

Второй с именем 2.bat и также содержащий одну команду

pause

Теперь запустим файл 1.bat Откроется окно, в котором будет предложено нажать любую клавишу для продолжения, после нажатия которой окно закроется. Таким образом, вызов из одного пакетного файла другого при помощи команды call останавливает исполнение пакетного файла до тех пор, пока не завершится выполнение пакетного файла, вызванного командой call.
В другом случае, надо запустить из bat файла либо приложение, либо другой пакетный файл, не прерывая выполнения основного пакетного файла. Такое нередко бывает нужно сделать, например, принудительно открыв лог работы пакетного файла, запланированного на ночь, чтобы с утра, пользователь мог проконтролировать правильность его выполнения. Для этого используется команда start Исправим в файле 1.bat строку на

start 2.bat

и запустим файл 1.bat Теперь открылось окно, в котором для продолжения надо нажать любую кнопку, а окно основного пакетного файла (1.bat) отработав закрылось.
Таким образом, для вызова из одного пакетного файла другого, без остановки работы первого пакетного файла, нужно применять команду start.
Рассмотренные команды start и call могут использоваться не только для запуска других пакетных файлов, но и для запуска любых приложений или открытия файлов.
Например, команда start log.txt, находящаяся в теле пакетного файла, откроет файл log.txt в Notepad без остановки работы пакетного файла.


Как отправить сообщение из bat-файла 
 
Когда пакетный файл исполняется на одной из машин в сети, то удобно проинформировать администратора об окончании его выполнения при помощи сообщения, отправленного на машину администратора. Сделать это можно, включив в пакетный файл команду

net send name Message text

Где name имя машины или пользователя, которому адресуется сообщение, а Message text - текст сообщения. После выполнения этой команды пользователю name будет отправлено сообщение.
Обратите внимание на то, что при использовании в тексте сообщения кириллицы текст должен быть набран в кодировке MS-DOS (866 кодовая страница). Иначе сообщение придет в виде нечитаемых символов. Набрать текст в кодировке DOS можно при помощи любого текстового редактора, поддерживающего эту кодировку. Это может быть, например, FAR. Откройте в FAR пакетный файл на редактирование (F4) и нажмите кнопку F8. В верхней строке редактора должна быть указана кодировка DOS, а снизу, у подсказки о быстрых клавишах, у клавиши F8 должна быть надпись Win, говорящая о том, что текущая кодировка DOS и для переключения в кодировку Win надо нажать F8.


Как автоматизировать удаление файлов по типу 
 
Чтобы очистить диск от временных файлов можно использовать команду

del /f /s /q C:\*.tmp

Где
/f - удаляет все файлы, даже если у них установлен атрибут только чтение
/s - удаляет файлы из всех подкаталогов
/q - отключает запрос на подтверждение удаления файла
C: - диск, на котором будут найдены и удалены файлы. Можно указать не весь диск, а папку, например, C:\WinNT
*.tmp - тип файлов, которые будут удалены
Будьте аккуратны с ключем /q и типами удаляемых файлов. Команда удаляет, не спрашивая разрешения и при указании неправильного типа файлов может удалить лишнего.


Как изменить IP адрес компьютера из пакетного файла 
 
IP адрес можно изменить при помощи команды netsh.
Чтобы правильно сменить IP адрес, сначала надо выяснить текущую конфигурацию. Сделать это можно в командной строке при помощи команды

netsh interface ip show address

Результат работы этой команды - отображение текущей конфигурации сетевого интерфейса. Нас интересует название интерфейса. Предположим, что он называется FASTNET.
Предположим, что нужно сменить IP адрес на 192.168.1.42, адресация в сети статическая, без использования DHCP, шлюз 192.168.1.1, маска 255.255.255.0 В этом случае, команда, которая должна быть выполнена из пакетного файла будет выглядеть следующим образом:

netsh interface ip set address name="FASTNET" static 192.168.1.42 255.255.255.0 192.169.1.1 1

После выполнения этой команды у интерфейса FASTNET IP адрес сменится на 192.168.1.42.
Команда netsh предоставляет широкие возможности по управлению сетевыми настройками из командной строки. Для ознакомления с другими ее функциональными возможностями пользуйтесь справкой при помощи netsh /?


Как узнать имя компьютера из bat файла 
 
Чтобы узнать имя компьютера при выполнении bat файла (чтобы использовать это значение в дальнейшем) используйте команду

hostname

Эта команда возвращает имя компьютера, на котором она запущена.


Как переименовать файлы по маске из пакетного файла 
 
Иногда возникает необходимость переименовать все файлы в папке по шаблону из пакетного файла. Сделать это можно при помощи следующей команды в bat-файле:

for /f "tokens=*" %%a in ('dir /b PATH\*.*') do ren PATH\%%a Prefix%%a

В этой строке надо заменить PATH\ на путь к файлам, которые будут переименованы, а Prefix на те символы, которые будут добавлены к имени файла при переименовании.
Не помещайте пакетный файл в папку, где происходит переименование, иначе он будет переименован тоже. Если в папке, где происходит переименование файлов есть подпапки, то к имени подпапки также будет добавлен префикс, т. е. подпапки будут переименованы как и файлы.
Если указать определенную маску для типов файлов, которые подлежат переименованию, например, *.txt, а не *.* как в примере, то будут переименованы файлы только указанных типов. Другие файлы и папки переименовываться не будут.

Второй вариант:

set thePATH=C:\test
for %%I in (*.txt) do ren "%thePATH%\%%~nxI" "%%~nI.dat"


Как использовать в пакетном файле символ процент 

Чтобы использовать символ процент (%) в пакетном файле его надо написать дважды. Например

echo 50%%

Эта команда в bat-файле выведет на экран 50%. Если же использовать команду echo 50%, то на экран будет выведено только число 50.
Учитывайте эту особенность при использовании символа % в написании пакетных файлов.


Как из пакетного файла сделать экспорт реестра 

Иногда возникает необходимость сохранить в файл определенный куст (ветку) реестра со всеми параметрами в качестве бэкапа или для других целей. Сделать это из пакетного файла можно при помощи такой команды:

regedit.exe -ea C:\environment.reg "HKEY_CURRENT_USER\Environment"

Данная команда при выполнении пакетного файла выгрузит ветку HKEY_CURRENT_USER\Environment в файл C:\environment.reg Когда потребуется восстановить значения параметров в HKEY_CURRENT_USER\Environment, будет достаточно запустить файл environment.reg. Эту команду можно использовать для ежедневного бэкапа настроек программного обеспечения и системы, которые хранятся в реестре.
Не забывайте, что если в пути, по которому должен быть сохранен выходной файл или в имени ветки реестра есть пробел, то их необходимо заключить в кавычки.


Как из пакетного файла импортировать значения переменных реестра 

Если есть необходимость из пакетного файла импортировать в реестр ранее сохраненные или новые значения переменных, то это можно сделать при помощи команды

regedit.exe -s C:\environment.reg

Эта команда импортирует в реестр данные из файла environment.reg без запросов на подтверждение за счет использования ключа -s.


Как из bat файла обойти проверку даты 
 
Некоторое программное обеспечение при запуске проверяет текущую системную дату. Если дата больше, чем заложено разработчиком, то программа не запускается. Например, разработчик считает, что версия программы может отработать месяц, а потом пользователь должен будет установить обновленную версию программы. С одной стороны это забота о пользователе, который будет иметь в своем распоряжении свежую версию программы с устраненными недочетами, по отношению к прошлым версиям. С другой стороны, производитель вынуждает пользователя скачивать новую версию даже если пользователя полностью устраивает та версия программы, которая у него установлена. Данную проблему можно легко решить при помощи следующего пакетного файла, который будет запускать программу, дожидаться ее завершения и возвращать дату на ту, которая была до запуска программы.

set tempdate=%date:~-10%
date 01-01-04
notepad.exe
date %tempdate%

В данном примере текущая системная дата сначала сохраняется в переменной, затем (во второй строке) системная дата устанавливается на 1-е января 2004 года, а потом вызывается программа, которая проверяет системную дату. В данном примере это Блокнот. До тех пор, пока открыт Блокнот, пакетный файл находится в ожидании, не завершаясь и не переводя системную дату обратно. Как только Блокнот будет закрыт, пакетный файл продолжит свое выполнение и установит системную дату на сохраненное в переменной tempdate значение, т.е. на то, которое было до запуска пакетного файла.
Не забывайте, что если путь до файла, которым запускается программа, содержит пробелы, то его (путь) необходимо заключить в кавычки. Если путь содержит кириллицу, то при написании пакетного файла необходимо использовать текстовый редактор, поддерживающий кодировку DOS (например, FAR). В противном случае, при запуске пакетного файла будет выведено сообщение о том, что "указанный файл не является внутренней или внешней коммандой...".
Если программа проверяет текущую системную дату только при своем запуске и во время работы больше этого не делает, то пакетный файл можно модифицировать, добавив перед именем исполняемого файла программы оператор start, т.е. наш пример будет выглядеть так:

set tempdate=%date:~-10%
date 01-01-04
start notepad.exe
date %tempdate%

В этом случае, пакетный файл изменит системную дату, запустит программу и не дожидаясь ее завершения вернет дату на ту, которая была до запуска программы.


Как в bat файле дождаться появления определенного файла 
 
Иногда необходимо при появлении определенного файла в папке выполнить какое-то действие. Чтобы организовать проверку появления файла в папке можно использовать следующий пакетный файл

:test
if exist c:\1.txt goto go
sleep 10
goto test
:go
notepad

Такой пакетный файл будет проверять с интервалом 10 секунд наличие в корне диска С файла 1.txt и когда файл 1.txt появится, будет выполнено действие, указанное после метки go, т.е. в этом примере будет запущен Блокнот.
Утилита sleep свободно распространяется в составе Resource Kit. Вы можете её скачать здесь.
Если файл 1.txt большого размера и копируется откуда-то, то может получится так, что пакетный файл проверит его наличие в то время, как файл еще не скопировался или занят другим приложением. В таком случае, попытка выполнить какие-то действия с файлом 1.txt приведет к ошибке. Чтобы этого не произошло пакетный файл можно модифицировать следующим образом

:test
if exist c:\1.txt goto go
sleep 10
goto test
:go
rename c:\1.txt 1.txt
if not errorlevel 0 goto go
del c:\1.txt

Когда файл 1.txt скопировался на диск С не полностью, либо занят другим приложением, попытка его переименовать вызовет ошибку и цикл будет повторяться до тех пор, пока файл не скопируется полностью либо не будет освобожден. После того, как команда rename c:\1.txt 1.txt будет выполнена без ошибки (т.е. файл свободен), то с ним можно выполнять любые действия. В последнем примере это его удаление.


Как добавить комментарии в bat-файл

При написании большого пакетного файла очень полезно добавлять комментарии к его основным блокам. Это позволит с легкостью разобраться в том, что делают эти блоки по прошествии времени.
Комментарии можно добавить несколькими способами. Первый больше годится для написания больших комментариев, описывающих либо весь пакетный файл, либо несколько больших его блоков. Код выглядит следующим образом:

goto start
———————————————————
Этот пакетный файл предназначен
для автоматизации рутинных операций,
выполняемых ночью для синхронизации
содержимого корпоративного ftp-сервера
с ftp-серверами филиалов
———————————————————
Пакетный файл написан 01/01/2004
Последнее исправление внесено 10/02/2004
———————————————————
И т.д.
:start

Такое написание комментария при запуске пакетного файла передаст управление сразу к команде, следующей за меткой start. За это отвечает оператор перехода goto.
Более простые комментарии можно добавить, начиная строки с команды rem или с двух двоеточий, идущих друг за другом.

rem Этот блок устанавливает соединение с удаленным сервером

:: Этот блок проверяет дату изменения файлов

Комментирование больших пакетных файлов (как, в принципе, и любого кода) - хороший тон, который значительно облегчает процесс разбора этих файлов другими людьми или самим автором по прошествии значительного времени с момента написания.


Автоматическое создание резервной копии данных 

Favorite любезно поделился с нами небольшим скриптом, который автоматически создаёт архивную копию важных данных. Вот его сообщение: 

Скрипт архивирует папку файлопомойки (\\SERVER\e$ \Exchange)
и папку с данными юзеров (домашнюю Данные пользователей (\\SERVER\e$ \Departments))
Скрипт не архивирует медиафайлы, так как они занимают вагон места и их потеря у меня не критична 

rem *******************
rem задаём винты где лежат папки для архивирования и винт куда будем бэкапить
rem *******************
SET DRIVE1ST=d:
SET DRIVE2ND=e:

rem *******************
rem пароль на архив
rem *******************
SET PASSWD=qmsdhgsdfgsdfhdsfhsdhf

rem *******************
rem если копировать для надёжности куданить на сетку
rem *******************
rem SET COPYTO=\\shpakk\c$ \!backup

rem ********************
rem *** Проверим путь назначения архива
rem ********************
%DRIVE1ST%
if not exist \!backup md \!backup
if not exist \!backup\Departments md \!backup\Departments
if not exist \!backup\Exchange md \!backup\Exchange
if not exist \!backup\MEDEA_rdisk md \!backup\MEDEA_rdisk
cd \!backup

rem ******************************
rem *** Backup \\SERVER\e$ \Exchange
rem ******************************
SET DIRNAME=Exchange
SET FILENAME=SERVER_Exchange
SET SOURCEDIR=e:\Exchange
rar a -r -m5 -dh -x*.mp3 -x*.fcd -x*.avi -x*.zip -x*.rar -x*.exe -w%DRIVE2ND%\ -p%PASSWD% %DIRNAME%\%FILENAME%_new %SOURCEDIR%\*.*
if not exist %DIRNAME%\%FILENAME%_new.rar goto next2
del %DIRNAME%\%FILENAME%_old.rar
ren %DIRNAME%\%FILENAME%.rar %FILENAME%_old.rar
ren %DIRNAME%\%FILENAME%_new.rar %FILENAME%.rar
copy %DIRNAME%\%FILENAME%.rar %COPYTO%\%DIRNAME%

:next2
rem ***************************
rem *** Backup \\SERVER\e$ \Users
rem ***************************
SET DIRNAME=Departments
SET FILENAME=SERVER_Departments
SET SOURCEDIR=e:\Departments
if not exist %DIRNAME%\%FILENAME%_new.rar goto next3
del %DIRNAME%\%FILENAME%_old.rar
ren %DIRNAME%\%FILENAME%_4.rar %FILENAME%_old.rar
ren %DIRNAME%\%FILENAME%_3.rar %FILENAME%_4.rar
ren %DIRNAME%\%FILENAME%_2.rar %FILENAME%_3.rar
ren %DIRNAME%\%FILENAME%_new.rar %FILENAME%_2.rar
:next3
rem *******************
rem это если архив будет большим - кусками бить -v357888k
rem *******************
rem rar a -r -m5 -v357888k -dh -x*.mp3 -x*.fcd -x*.avi -x*.exe -w%DRIVE2ND%\ -p%PASSWD% %DIRNAME%\%FILENAME%_new %SOURCEDIR%
rem *******************
rem архивирование пошло, не берём мультимедиа файлы
rem *******************
rar a -r -dh -x*.mp3 -x*.fcd -x*.avi -x*.exe -x*.jpg -x*.tif -p%PASSWD% %DIRNAME%\%FILENAME%_new %SOURCEDIR%
goto next4

:next4
rem **********************************
rem *** Create repair disk on \\SERVER
rem **********************************
SET DIRNAME=MEDEA_rdisk
SET FILENAME=MEDEA_rdisk
SET SOURCEDIR=%windir%\repair
%windir%\system32\rdisk.exe /s-
rar a -r -m5 -dh -w%DRIVE2ND%\ -p%PASSWD% %DIRNAME%\%FILENAME%_new %SOURCEDIR%\*.*
if not exist %DIRNAME%\%FILENAME%_new.rar goto next5
del %DIRNAME%\%FILENAME%_old.rar
ren %DIRNAME%\%FILENAME%.rar %FILENAME%_old.rar
ren %DIRNAME%\%FILENAME%_new.rar %FILENAME%.rar
copy %DIRNAME%\%FILENAME%.rar %COPYTO%\%DIRNAME%

:next5

В итоге имеем 3 папки: 

Departments, в ней:
SERVER_Departments_2.rar - 2х дневной давности
SERVER_Departments_3.rar - 3х дневной давности
SERVER_Departments_4.rar - 4х дневной давности
SERVER_Departments_new.rar - НОВЫЙ
SERVER_Departments_old.rar - СТАРЫЙ 

Exchange
Так как архивируем обменник - он нам сильно то и не нужен храним только сегодняшний и вчерашний архивы
SERVER_Exchange.rar
SERVER_Exchange_old.rar 

ну и систему на всякий в папке
SERVER_rdisk
SERVER_rdisk.rar
SERVER_rdisk_old.rar

Как запретить повторный запуск приложения 

Если приложение запускается bat-файлом, то отследить (и запретить) его повторный запуск можно таким образом: 

pslist.exe -e "процесс"
if %errorlevel%==1 start "" "программа" 

pslist - бесплатная утилита, которую можно скачать здесь.

Как создать папку с именем равным текущей дате 

Достаточно часто необходимо создавать папку с именем равным текущей дате и затем копировать в нее, например, бэкап. Есть насколько вариантов создания такой папки: 

MD %SYSTEMDRIVE%\%date:~-10% 

Такая команда создаст в корне системного диска папку с именем равным текущей дате. Эта команда не сработает, если региональные установки отличны от русского и в разделителях даты используется слеш. В таком случае, поможет один из следующих скриптов: 

md %systemdrive%\%date:~0,2%_%date:~3,2%_%date:~6,4% 

или 

md %systemdrive%\%date:~6,4%_%date:~3,2%_%date:~0,2% 

Во втором случае, папки будут сортироваться по алфавиту. 

Как вариант, можно рассмотреть добавление к имени файла текущей даты: 

@echo off
for /F "tokens=1-4 usebackq delims=. " %%1 in (`date /t`) do set mydate=%%4.%%3.%%2
ren test.txt test%mydate%.txt 

Имя файла test.txt будет переименовано в test2005.03.05.txt


Можно ли зациклить в bat-файле выполнение команды? 

Иногда необходимо создать bat-файл, который будет запускать некую команду через определённый интервал времени. Для решения этой задачи можно воспользоваться Планировщиком и часто запускать bat-файл из него, а можно создать в bat-файле цикл с паузой. 

Цикл организуется при помощи следующих команд: 

:loop
... goto loop 

Паузу можно создать при помощи любой команды. Например, при помощи ping: 

ping -n 1 -w 100000 192.168.254.254 >nul 

-n 1 - выполнить один запрос
-w 100000 - ждать ответа 100 секунд (значение указывается в миллисекундах)
192.168.254.254 - IP адрес, который заведомо не существует в локальной сети, т.е. никогда не ответит на ping
>nul - перенаправление всего вывода команды ping в никуда.


Как в bat-файле создать паузу перед выполнением следующей команды? 

Паузу можно создать при помощи любой команды. Например, при помощи ping: 

ping -n 1 -w 100000 192.168.254.254 >nul 

-n 1 - выполнить один запрос
-w 100000 - ждать ответа 100 секунд (значение указывается в миллисекундах)
192.168.254.254 - IP адрес, который заведомо не существует в локальной сети, т.е. никогда не ответит на ping
>nul - перенаправление всего вывода команды ping в никуда.

Можно использовать утилиту sleep.exe из Ресурскита.

Назад

Команды bat-файлов (Windows)

При работе на компьютере часто возникает необходимость повтора одних и тех же DOS-команд для осуществления периодически исполняемых действий, построения сложной и многоуровневой последовательности исполняемых команд или приложений, автоматизации работы с приложениями и файлами с участием или в отсутствие пользователя. В операционной системе есть возможность записать несколько команд в bat-файле. При этом, просто запуская данный командный файл (часто его называют скрипт, или просто «батник»), можно осуществлять выполнение прописанных команд, а прописав его в событиях планировщика Windows, можно автоматизировать этот процесс.

Особенностью файлов данного типа является отсутствие внутри какого-либо кода - имеется только тактовая информация, которую считывает и исполняет командный DOS-процессор, совместимый практически со всеми версиями операционной системы Windows. Одним из ярких примеров является файл autoexec.bat, который необходим для запуска этой ОС, так как именно он осуществляет ее настройки в ходе запуска.

Основные возможности командных файлов

Команды, которые содержит bat-файл, по функционалу можно условно разделить на несколько групп:

- предназначенные для вывода на экран определенного значения, фразы, приложения или сведений;
- для осуществления запуска пакетных документов;
- для работы с циклами;
- для создания ветвления исполнения с помощью условий;
- для работы с приложениями.

Выполнение командных файлов

Запуск bat-файлов можно осуществить различными способами. При работе в командной строке в текущем каталоге можно просто вводить имена файлов с дополнительными параметрами или без них. При этом команды bat-файлов после запуска будут выполняться последовательно друг за другом, уже без вмешательства пользователя.

При нахождении командного файла в другом каталоге необходимо кроме полного имени этого файла прописать полный путь до каталога его хранения. Расширение файла также можно не прописывать. Например, текущий каталог d:\photo\work, а командный файл vera.bat, который нужно выполнить с параметрами resize.doc и /p, находится в каталоге d:\photo\home. Тогда для того, чтобы осуществился запуск нашего файла, нужно прописать команду d:\photo\home\vera resize.doc /p или команду ..\home\vera resize.doc /p.

Прерывание работы

Исполняемые после запуска команды bat-файлов можно прервать комбинациями кнопок <Ctrl>+<Break> и <Ctrl>+<C>. На дисплее появится запрос на прерывание выполнения командного файла с запросом, ожидающим ввода Yes или No. Если ввести Y, то выполнение прервется, а оставшийся список команд bat-файла будет проигнорирован. Если введете символ N, то выполнение продолжится со следующей команды из списка.

Вызов другого командного файла

Bat-файлы могут содержать в себе ссылки на исполнение других скриптов. Если просто прописать в теле скрипта bat-файл, команды после него уже исполняться не будут, так как управление передается на другой батник и будут выполнены команды уже из него. Если требуется возврат после запуска внутреннего файла, то его можно вызвать командой CALL. Формат команды выглядит так: CALL имя-бат-файла [параметры запуска].

Параметрами, которые передаются вызываемому командному файлу (файлам), обычно являются символы %1 - %9. Когда команды bat-файлов все последовательно будут пройдены, продолжится выполнение исходного скрипта со следующей строки.

Пошаговое выполнение

Бывают случаи, когда команды bat-файлов нужно выполнить пошагово (с остановкой после каждой строчки). Наиболее часто такой режим требуется при отладке или тестировании скриптов. Написание команды выглядит так: COMMAND /y/c имя _скрипта [параметры].

При выполнении на каждую команду будет выдаваться запрос Y или N. Если требуется выполнение команды — жмем клавишу Enter или Y. Если нужно пропустить команду — жмем ESC или N.

Отключение и включение вывода команд на экран

Когда запускается bat-файл, команды построчно перед выполнением отображаются на экране и после этого выполняются. Иногда это вызывает неудобство, так как при большом батнике команды длинным списком пробегают перед пользователем на экране, а иногда требуется их показ, например, для диалога или отладки. Чтобы bat-файл команды выводил на дисплей, применяется команда ECHO ON. Для отключения этого режима нужно ввести ECHO с параметром OFF. При этом все исполняемые далее команды показываться на экране уже не будут.

Для отключения вывода только какой-либо одной строки батника на экран можно использовать в самом начале этой строки символ @. Чаще всего этот символ можно встретить в паре с командой @ECHO OFF для исключения вывода ее на дисплей монитора. Такой режим часто используют злоумышленники, создавая на основе bat-файлов вирусы или доставляя мелкие и крупные неприятности пользователям компьютеров.

Сообщения при исполнении команд

Если после команды ECHO будут расположены символы, отличные от ON или OFF, то они будут выводиться на экран в любом режиме. Если ECHO будет без параметров, то она выдает на экран состояние режима отображения исполняемых команд — включен или выключен.

При желании можно воспроизвести даже звуковой сигнал (писк) компьютера, используя bat-файл. Команды, примеры которых приведены далее, основаны на операторе ECHO с добавлением специальных символов.

Для воспроизведения звукового сигнала нужно вывести стандартный символ с кодом 7. Сделать это можно, нажав клавишу <alt> и «7» на цифровой клавиатуре (с надписью home).

Для того чтобы повысить удобочитаемость сообщений можно применить команду ECHO с параметром «.» (она ставится сразу за командой без пробела) или специальным символом с кодом 255. На экране это будет выглядеть как пустая строчка.

Команду ECHO можно использовать для вывода сообщений в отдельный файл. Суть ее состоит в перенаправлении вывода сообщений на запись в файл, а не на экран монитора. Для сохранения логов, анкетирования, записи событий можно использовать пакетные файлы bat. Команды вывода имеют следующий формат:

- ECHO-сообщение >> имя файла — команда добавляет строчку в конец существующего файла. Если такого файла в данной директории нет, то создается новый файл.

- ECHO-сообщение > имя файла — этой командой создается новый файл, и в него записывается текущая строчка. В случае наличия такого файла в текущей директории, содержимое его будет удалено и записана команда или ее результат.

Использование комментариев

Для удобства редактирования скриптов используется команда REM. Все находящиеся после нее команды bat-файлов Windows игнорирует при исполнении. Их можно увидеть при редактировании и при пошаговом режиме. Во всех других случаях комментарии на экран выводиться не будут.

Команда задержки в bat-файле

Иногда во время выполнения батника возникает необходимость временно остановить исполнение команд, например, для ожидания реакции пользователя, для увеличения времени на прочтение длинного сообщения, для вставки диска, подтверждения присутствия пользователя или для отладки пакетного файла. Команда задержки в bat-файле пишется как PAUSE без параметров. При этом на дисплее отобразится сообщение типа «Нажмите любую клавишу для продолжения», и выполнение скрипта будет приостановлено до нажатия кнопки клавиатуры. Если будет нажата комбинация <ctrl>+<break> или <ctrl>+<c>, то система воспримет это как завершение работы исполняемого файла и выдаст запрос на подтверждение завершения его работы: «Прервать выполнение командного файла? (Y/N)». Если нажать клавишу Y, то произойдет прерывание работы скрипта в этом месте и все оставшиеся невыполненные команды будут проигнорированы. При нажатии N выполнение будет продолжаться со следующей команды. При паузе нажатие любых других буквенно-цифровых клавиш, а также «Пробел» и «Ввод» выполнение исполняемого файла будет продолжаться со следующей команды.

Для последовательного исполнения нескольких файлов из списка, находящихся в одной директории, также можно использовать bat-файл. Команды «запуск программы по названию» и «запуск программы по расширению файла» часто могут помочь с автоматизацией обработки документов, например сортировка вложений почты. Отличаются они параметрами для команды FOR. Формат написания ее приведен ниже:

- FOR %x IN (список файлов) DO команда, где:

- х - любой символ, за исключением цифр от 0 до 9;

- список — разделенные пробелами имена файлов или название одного файла; при этом можно использовать спецсимволы «?» и «*» для замены от одного до нескольких знаков в названии файлов;

- команда — любая DOS-команда или программа, кроме FOR; если есть необходимость использования FOR, то вместо %x нужно указать %%x.

При использовании этой команды для написания bat-файлов нужно учитывать, что имена в программах формата DOS имеют ограничение по длине названия. Для того чтобы произвести переключение команды FOR на работу с длинными именами файлов, нужно не забыть перед ней запустить команду LFNFOR ON для включения режима работы с длинными именами и LFNFOR OFF для его отключения и возврата к стандартной длине файлов.

Многие функции с программами, такие как сравнение файлов с определенными типами расширений, находящихся в одной директории, с файлами тех же типов из другой директории, копирование всех файлов текущего каталога в другой, последовательное исполнение файлов с расширениями определенного типа и названиями, начинающимися с цифр, можно осуществить с помощью всего лишь одной вписанной в bat-файл команды. Запуск программы можно комбинировать с запросами пользователя, что способствует повышению удобства работы с данными.

Переходы в bat-файлах

Для удобства управления порядком запуска команд в bat-файлах в них часто используют команды переходов и метки, по которым эти переходы осуществляются.
Метка представляет собой любую строку исполняемого файла, которая начинается с символа «двоеточие». Имя метки — это набор символов после двоеточия до конца строки или до первого пробела, после которого остаток строки игнорируется, что можно использовать как комментарий к метке перехода.

Команда перехода имеет написание GOTO с названием метки через пробел. Если параметра нет или название метки в командном файле не обнаружено, то работа скрипта на этой команде прекращается. Пример:

GOTO zzz

:zzz

REM (запускаются требуемые команды).

В этом примере последовательное исполнение командного файла, дойдя до GOTO zzz, переходит на метку :zzz и продолжается с REM, игнорируя все, что находится между командой перехода и указанной меткой.

Использование условий при работе с bat-файлами

Bat-файл может исполнять или не исполнять команды в зависимости от различных условий, если в нем применяется проверка наступления события IF. Формат этой команды выглядит как «IF условие команда».

Условие представляет собой различные варианты выражений:

- ERRORLEVEL число — в том случае, когда предыдущая выполняемая программа закончилась с кодом завершения, равным указанному числовому значению или больше него, условие будет истинным.

- СТРОКА 1 == СТРОКА 2 - в случае полного совпадения строк условие становится истинным. Вместо строк можно подставить символы %0 - %9, тогда будут сравниваться параметры командного файла.

- EXIST - имя файла - если указанный файл существует, то условие истинное.

- NOT - условие — если указанное условие ложное, то на выходе команды получим истинное значение.

Применяемые команды в bat-файлах

Если нажать кнопку "Пуск" и запустить командную строку (cmd), то можно посмотреть все вставляемые в bat-файл команды. CMD-режим можно использовать как средство для отладки, как помощника, программу для получения сведений о командах. Для этого просто можно набрать HELP. При этом выдается список команд с краткими описаниями к ним. Для получения более детальной информации можно ввести HELP с названием нужной команды.

Использование bat-файлов при резервном копировании данных

Командные файлы сильно упрощают жизнь системным администраторам при осуществлении повседневной работы. Наиболее распространенной сферой их применения являются резервное копирование, создание, удаление, переименование и многое другое. Все это основано на использовании команды bat-файла COPY. К примеру, можно создать программу, которая делает архивные копии документов из выбранной папки с пользовательскими данными определенных форматов, исключив, допустим, медиафайлы большого объема, обеспечив резервирование в папке с именем пользователя и текущей датой, и назвать ее "Команда_копирования_файлов.bat". После этого необходимо обеспечить ее запуск в определенное время с помощью встроенного планировщика или силами самой программы и тем самым обеспечить сохранность данных пользователя.

Решаем практические задачи на батниках / Хабр

Батники это не мощный язык программирования, но, в то же время, на нем можно решить много рутинных задач. Цель статьи не просто рассказать о возможностях Windows-консоли, а показать их, решая практические задачи с которыми мне приходилось сталкиваться.

Подтверждение выполнения

set answer=
set /p answer="Выполнить? [y/n]:"
if not "%answer%" == "y" exit /b

Устанавливаем переменную answer в пустое значение (необходимо, для того чтобы затереть предыдущее значение, например, если батник исполняется несколько раз). set с ключом /p устанавливает значение переменной, которое вводится пользователем. Проверяем значение переменной и если оно не равно y завершаем выполнение батника.

Как получить текущий месяц, день, год и т.п.?

В батниках есть возможность получать подстроку используя синтаксис %variable:~m,n% Где variable это название переменной m – индекс первого символа, а n – количество символов подстроки.

Следовательно, если команда echo %date% (а формат даты может у вас отличатся) выведет 13.06.2009, то для того чтобы получить текущий месяц достаточно выполнить %date:~3,2% Таким образом, если нам необходимо, например, сформировать имя файла или директории, которое соответствует текущему месяцу и дню, мы это сделаем так:

set fname=%date:~3,2%%date:~0,2%

Лично мне такое понадобилось для задания ключа /d для xcopy.

Как вывести пустую строку в лог-файл?

Я не сразу догадался, что это можно делать вот так: 🙂

echo.>> %logfile%

Т.е. нужно поставить точку после echo.

Предыдущая команда выполнена успешно?

В большинстве случаев это:

if %errorlevel%==0 (
  echo OK>> %logfile%
) else (
  echo ERROR #%errorlevel% >> %logfile%
)

Архивирование файла с переменным именем

for %%i in (c:\dir\#fe*.*) do rar a -ep c:\other_dir\%%~ni.rar %%i

Задача состоит в том, чтобы заархивировать файл с именем, которое меняется ежедневно, но в другую папку. Следующим куском кода

for %%i in (c:\dir\#fe*.*) do

мы выбираем все файлы по маске, исполняя команду rar a -ep c:\other_dir\%%~ni.rar %%i для каждого, где %%~ni это только имя файла.

Имя текущего исполняемого батника

%~n0

Нужно, например, для того чтобы вести один лог для нескольких батников.

«Функция» в батниках

Если мы исполняем в одном батнике несколько повторяющихся команд, но с разными значениями переменных, то это можно реализовать так:

set thebat=c:\Program Files\The Bat!\thebat.exe
set action=SEND

set [email protected]
set subject=Subject_1
set attach=c:\dir\file????
call :mailit


set [email protected]
set subject=Subject_2
set attach=c:\dir\file*.rar
call :mailit

…

exit

:mailit
@echo on
"%thebat%" /MAILTO="%mailto%";SUBJECT="%subject%";ATTACH="%attach%";%action% >> %logfile%
@echo off
exit /b

Таким образом, у меня отсылается десяток разных файлов разным получателям, используя The Bat! Такой файл читать и редактировать намного удобнее, чем это было бы десять команд The Bat! подряд.

Получить последний по дате создание файл

Для начала получим список всех файлов, отсортированных по дате модификации:

dir /b /od /a-d c:\dir\file_*.xls

И пройдемся по нему циклом.

for /f "tokens=*" %%a in (' dir /b /od /a-d c:\dir\file_*.xls ') do set "lastfile=%%a"

Логично, что по завершению цикла в переменной %lastfile% у нас будет последний по дате модификации файл 😉

Выкачать файл по FTP

ftp -s:file_to_ftp.txt 127.0.0.1

Где файл file_to_ftp.txt будет у нас выглядеть следующим образом:

login
password
bin 
cd /files
put file.xls 
quit

Создаем нумерованные каталоги с инкрементом на единицу

set dir_last=
for /f "tokens=*" %%i in ('dir /ad /b') do set dir_last=%%i

if '%dir_last%'=='' (set dir_last=000)

set dir_last=1%dir_last%
set /a dir_last = %dir_last% - 1000
set /a dir_new=%dir_last% + 1

set dir_new=00%dir_new%
set dir_new=%dir_new:~-3%
md %dir_new%

Разобраться в коде предлагаю вам самим. 🙂 Основная возможность, которую я хотел показать данным примером, это использование ключа /a команды set для вычисления выражений. 😉

Команды bat файла | Компьютерная помощь

В прошлом материале Мы пробовали создать bat файл в Windows 7, 8, теперь пришло время рассмотреть bat команды. В основном  тут используются  команды вводимые в cmd, но есть и такие, которые нет смысла использовать в командной строке.

Как получить полный список bat команд

Для описания всех команд потребуется написать целый ряд статей, чтобы Вас сильно не нагружать ограничимся в рамках одной статьи и рассмотрим компактную информацию. Как известно, команды bat файла  и cmdодни и те же, чтобы получить их список запустите cmd в Виндовс 7 или командную строку в Windows 8. Введите команду справки, которая по-английски пишется как help, нажмите Enter. В результате компьютер в интерфейсе cmd пропишет все команды с кратким описанием.

Ознакомившись с данным списком, Вы захотите узнать поподробнее, что представляет собой определенная bat команда. Например, выберем команду for, для ее описания введем help for или for /? и кликнем энтер. В результате Вы получите оперативную справку по команде, она объемная, поэтому потребуется нажать несколько раз любую клавишу, чтобы ознакомиться с последующим описанием. Таким образом, можно изучить синтаксис той или иной команды.

Команды bat файла

Сейчас познакомимся с командами, используемыми в пакетном файле, с кратким описанием. Они не чувствительны к регистру, тем не менее, Мы их перечислили в верхнем регистре, чтобы помочь с идентификацией.

@Все выполняемые bat команды выводятся на экран, чтобы убрать лишнее, перед командой ставится «собака». Часто используется с @echo off.
setЗадает переменные. Например, setper=c:\windows здесь per присваиваем путь. В переменную можно записать громоздкое значение и указать ее в сценарии, что сделает код компактнее. Если ее содержание изменится, тогда не придется менять везде значения, где предусмотрена эта переменная.
::Один из двух методов комментирования в bat файле без вывода этой строки на экран.
:LABELПри добавлении к слову двоеточия, создается метка, которая позволяет перейти к разным разделам батника. Метка может носить другое название, LABEL это пример.
CALLBat команда, вызывающая один пакетный файл в другом. Все параметры, описанные в одном из файлов, могут быть переданы друг другу.
CHOICEКоманда выбора.
CLSОчищает содержимое командного интерпретатора, что выведено на экран выше  CLS.
ECHOВыводит сообщение на экран. Например, «ECHO Привет!» выведет «Привет!». Если не использовать @ECHO off в начале пакетного файла, тогда Вы увидите путь к bat файлу и два сообщения, что является излишним. Вы можете создать пустую строку введите ECHO. с точкой в конце.
EXITЗавершает текущий пакетный сценарий.
GOTO LABELИспользуется для перехода к определенной метки, в данном случае к LABEL и исполняет сценарий после нее.
IFКак и в языках программирования batкоманда ifолицетворяет выполнение условия, в зависимости от которого сценарий пойдет по тому или иному пути. С синтаксисом знакомьтесь в справке.
forЦикл, используемый для организации выполнения одних и тех же действий.
PAUSEЕсли необходимо ознакомиться с результатом сценария, а он выполняется, и окно быстро закрывается, тогда используйте PAUSE. Она позволит посмотреть результат и завершить сценарий по нажатию любой кнопки.
REMВторой способ комментирования. В отличии от :: печатается на экране, если нет конструкции @ECHO off.
SHIFTИзменяет  положение пакетных параметров в bat файле.
STARTЗапускает программы, окна и т.д. Имеет множество атрибутов (смотрите справку).

Это является основой bat команд. Синтаксис некоторых элементов сложен для новичков и требует определенные знания. Все команды bat файла, описанные выше, рассмотрены поверхностно, с целью узнать их предназначение, а полный синтаксис Вы найдете в справке Windows.

Посмотрите еще статьи:

Вы можете пропустить чтение записи и оставить комментарий. Размещение ссылок запрещено.

Список команд для пакетного (*.bat, *.cmd) файла | Разработка и дизайн

Пакетный файл - это файл с расширением .bat, содержащий сценарий для исполнения в среде Windows. Расширение в свою очередь образовано от англ. batch file, в просторечии - пакетник, батник, батничек ...

Для получения сведений об определенной команде наберите HELP <имя команды>
ASSOC    Вывод либо изменение сопоставлений по расширениям имен файлов.
AT       Выполнение команд и запуск программ по расписанию.
ATTRIB   Отображение и изменение атрибутов файлов.
BREAK    Включение/выключение режима обработки комбинации клавиш CTRL+C.
CACLS    Отображение/редактирование списков управления доступом (ACL) к файлам.
CALL     Вызов одного пакетного файла из другого.
CD       Вывод имени либо смена текущей папки.
CHCP     Вывод либо установка активной кодовой страницы.
CHDIR    Вывод имени либо смена текущей папки.
CHKDSK   Проверка диска и вывод статистики.
CHKNTFS  Отображение или изменение выполнения проверки диска во время загрузки.
CLS      Очистка экрана.
CMD      Запуск еще одного интерпретатора командных строк Windows.
COLOR    Установка цвета текста и фона, используемых по умолчанию.
COMP     Сравнение содержимого двух файлов или двух наборов файлов.
COMPACT  Отображение/изменение сжатия файлов в разделах NTFS.
CONVERT  Преобразование дисковых томов FAT в NTFS. Нельзя выполнить
         преобразование текущего активного диска.
COPY     Копирование одного или нескольких файлов в другое место.
DATE     Вывод либо установка текущей даты.
DEL      Удаление одного или нескольких файлов.
DIR      Вывод списка файлов и подпапок из указанной папки.
DISKCOMP Сравнение содержимого двух гибких дисков.
DISKCOPY Копирование содержимого одного гибкого диска на другой.
DOSKEY   Редактирование и повторный вызов командных строк; создание макросов.
ECHO     Вывод сообщений и переключение режима отображения команд на экране.
ENDLOCAL Конец локальных изменений среды для пакетного файла.
ERASE    Удаление одного или нескольких файлов.
EXIT     Завершение работы программы CMD.EXE (интерпретатора командных строк).
FC       Сравнение двух файлов или двух наборов файлов и вывод различий между
         ними.
FIND     Поиск текстовой строки в одном или нескольких файлах.
FINDSTR  Поиск строк в файлах.
FOR      Запуск указанной команды для каждого из файлов в наборе.
FORMAT   Форматирование диска для работы с Windows.
FTYPE    Вывод либо изменение типов файлов, используемых при сопоставлении по
         расширениям имен файлов.
GOTO     Передача управления в отмеченную строку пакетного файла.
GRAFTABL Позволяет Windows отображать расширенный набор символов в графическом
         режиме.
HELP     Выводит справочную информацию о командах Windows.
IF       Оператор условного выполнения команд в пакетном файле.
LABEL    Создание, изменение и удаление меток тома для дисков.
MD       Создание папки.
MKDIR    Создание папки.
MODE     Конфигурирование системных устройств.
MORE     Последовательный вывод данных по частям размером в один экран.
MOVE     Перемещение одного или нескольких файлов из одной папки в другую.
PATH     Вывод либо установка пути поиска исполняемых файлов.
PAUSE    Приостановка выполнения пакетного файла и вывод сообщения.
POPD     Восстановление предыдущего значения текущей активной папки,
         сохраненного с помощью команды PUSHD.
PRINT    Вывод на печать содержимого текстовых файлов.
PROMPT   Изменение приглашения в командной строке Windows.
PUSHD    Сохранение значения текущей активной папки и переход к другой папке.
RD       Удаление папки.
RECOVER  Восстановление читаемой информации с плохого или поврежденного диска.
REM      Помещение комментариев в пакетные файлы и файл CONFIG.SYS.
REN      Переименование файлов и папок.
RENAME   Переименование файлов и папок.
REPLACE  Замещение файлов.
RMDIR    Удаление папки.
SET      Вывод, установка и удаление переменных среды Windows.
SETLOCAL Начало локальных изменений среды для пакетного файла.
SHIFT    Изменение содержимого (сдвиг) подставляемых параметров для пакетного
         файла.
SORT     Сортировка ввода.
START    Запуск программы или команды в отдельном окне.
SUBST    Сопоставляет заданному пути имя диска.
TIME     Вывод и установка системного времени.
TITLE    Назначение заголовка окна для текущего сеанса интерпретатора
         командных строк CMD.EXE.
TREE     Графическое отображение структуры папок заданного диска или заданной
         папки.
TYPE     Вывод на экран содержимого текстовых файлов.
VER      Вывод сведений о версии Windows.
VERIFY   Установка режима проверки правильности записи файлов на диск.
VOL      Вывод метки и серийного номера тома для диска.
XCOPY    Копирование файлов и дерева папок.


см. Описание команд от Microsoft(c)

Метки : пакетник, bat, файл, date, дата, команд, cmd


Читайте также


Включите JavaScript чтобы видеть комментарии Disqus

основы работы с командами bat-файлов

В процессе работы с операционной системой Windows может возникать необходимость зацикливания DOS-команд, создания многоуровневой цикличности повторяющихся действий или программ, автоматизирования рабочего процесса с утилитами и файлами в ручном или без участия юзера.


Для этих целей предназначены специальные типы файлов, которым присваивается расширение bat, в которых прописывается определенный набор команд, цикличность выполнения которых и необходимо создать. Таким образом, создав такой файл и прописав в него необходимые команды, а также добавив его в системный планировщик задач, можно реализовывать этот процесс полностью в автоматическом режиме без участия пользователя.

Основным преимуществом bat-файлов является отсутствие необходимости прописывать в них какой-либо программный код, благодаря чему работать с ними может даже начинающий юзер. Все что необходимо для создания такого файла — это задать исходную информацию, которая будет исполняться DOS-процессами. Помимо этого, этот процесс реализовывается одинаково на всех версиях Windows. В качестве примера можно привести системный файл autoexec.bat, в котором находится список всех служб и приложений, которые должны быть запущены при старте Windows.

BAT-файлы: основные возможности

В зависимости от реализовываемых функций, bat-файлы подразделяются на несколько типов:

— информационные, которые отвечают за вывод на дисплей определенной информации;
— рабочие, с помощью которых осуществляется запуск пакетных документов;
— циклические, предназначенные для создания рабочих циклических процессов;
— многоуровневые, которые отвечают за иерархическое исполнение системных команд, с использованием заданных условий;
— программные, позволяющие работать с утилитами.

Исполнение bat-файлов

Запустить исполнение командных файлов можно несколькими методами. Одним из наиболее простых является командная строка, в которой необходимо просто прописать название bat-файла. При этом допускается использование и дополнительных параметров. Как только все файлы указаны, их реализация будет происходить в автоматической режиме, в той последовательности, которую указал пользователь.

Если bar-файлы хранятся в различных директориях, то помимо имени потребуется указание полного пути к нему. При этом указывать расширение необязательно. Давайте предположим, что необходимо запустить выполнение bat-файла с именем priroda.bat, а также дополнительными параметрами resize.doc и /p, расположенного по адресу с:\photogalery\otpusk. Таким образом, для запуска файла достаточно прописать в командной строке команду с:\home\photogalery\otpusk resize.doc /p и начнется автоматическое выполнение процесса.

Прерывание выполнения командного файла

Исполнение любого командного файла можно остановить при помощи двойного нажатия клавиши «+», после чего потребуется подтвердить свое намерение прерывания посредством нажатия клавиши «Y» если вы согласны или «N» — если вдруг вы передумали.

Запуск другого bat-файла

Любой командный файл может выступать в качестве рабочего, который активирует выполнение других bat-файлов. Для этого необходимо прописать в теле такого файла команду CALL, после которой указывается название файла и дополнительные параметры, при необходимости, который необходимо исполнить. Если этот параметр не указать, то ничего не произойдет, поскольку в этом случае происходит передача прав другому файлу.
При задании дополнительных параметров используется символ «%» с указанием переменной от одного до девяти. После завершения выполнения всех команд, начнется исполнение начального скрипта с новой строки.

Последовательное исполнение

Иногда возникает необходимость последовательного исполнения команд, прописанных в теле командного файла. Чаще всего это происходит на этапе отладки и тестирования работоспособности скриптов. Для настройки пошагового выполнения предназначена команда COMMAND, которая прописывается в начале каждой строки. После этой команды указываются переменные /y/c, название скрипта и дополнительные параметры, помещенные в квадратные скобки.
При начале исполнения каждой новой команды со стороны пользователя потребуется подтверждение при помощи клавиши «Enter» или «Escape».

Управление выводом команд на дисплей

При запуске исполнения командного файла происходит оповещение юзера при помощи окна уведомления, после чего начинается непосредственное его выполнение. Однако эти оповещения не всегда являются уместными, поскольку bat-файлы большого объема могут отвлекать юзера от другой работы за компьютером длинными оповещениями. А вот при отладке они, наоборот, окажутся весьма кстати. Для управления функцией вывода команд на дисплей предназначена команда ECHO, а при помощи параметров ON и OFF можно активировать и деактивировать отображение уведомлений.

Если возникла необходимость отключения вывода на экран одной или нескольких команд, то в начале строки необходимо прописать команду @ECHO OFF. Стоит отметить, что многие киберпреступники используют такую команду для того, чтобы скрыть работу вредоносного программного обеспечения, помещенного в исполняемые командные файлы.

Сообщения при исполнении команд

Если команды ECHO прописана неправильно и после основных параметров в тексте команды присутствуют другие символы, то она работать не будет и вместе с текстом основного уведомления на дисплей будет выводиться и сама команда. Стоит отметить, что при помощи командных файлов можно настроить даже звуковое оповещение, которое будет подаваться при помощи спикера. Для этого, после основного символа необходимо поставить цифру 7. Если возникла необходимость повышения качества читабельности текста уведомления необходимо после ECHO поставить точку, не используя пробел.

Помимо стандартного вывода команд на экран, можно настроить отображение оповещений в отдельном файле. Для этого потребуется настроить путь вывода, просто заменив монитор на определенный файл. Делается это также при помощи bat-файлов, в которых прописываются следующие команды:

— ECHO-текс уведомления >> название файла — предназначена для добавления в конец файла строки сообщения. Если по указанному пути заданный файл отсутствует, то система создает новый файл.
— ECHO-текс уведомления >> название файла — отвечает за запись уведомления в новый файл. Стоит отметить, что если по указанному пути уже содержится файл с идентичным именем, то его содержимое будет полностью перезаписано.

Использование комментариев

Для удобства работы с командными файлами большого объема, содержащих множество команд, реализована возможность использования комментариев. Для этого необходимо поставить в начале строки параметр REM, после которого прописывается сам комментарий. Все что находится после этого параметра полностью игнорируется операционной системой.

Задержка исполнения командного файла

Во время работы с bat-файлами может возникнуть необходимость временной приостановки процесса их выполнения. Например, это может потребоваться чтобы дать пользователю немного времени на то, чтобы успеть прочитать выведенный текст, или для отладки программы. Для этого используется команда PAUSE, которая прописывается без каких-либо дополнительных параметров. Таким образом, если команда прерывания задействована в батнике, то исполнения командного файла будет приостановлено, а пользователь получит сообщение о том, что для продолжения выполнения необходимо нажать любую клавишу. Стоит отметить, что двойное нажатие на плюс система расценит как остановку исполнения командного файла, которое потребует от пользователя подтверждения или отмены. Все другие клавиши продолжат процесс выполнения bat-файла.

Последовательное исполнение пакета файлов

При помощи командного файла можно настроить последовательное выполнение большого количества файлов. При этом доступна возможность исполнения по названию или типу расширения. Это позволяет автоматизировать работу с большим количеством документов, например, с прайс-листами, которые поступают на электронную почту от поставщиков. Для этих целей предназначена команда FOR, вариант исполнения которой выглядит так:

— FOR %x IN (перечень файлов) DO команда, где:
— х — любой буквенный символ;
— перечень — все файлы можно перечислять через пробел;
— команда — любая DOS-команда или утилита.

Стоит отметить, что при использовании команды FOR необходимо учитывать тот факт, что все DOS-команды и программы обладают ограниченной длиной. Если возникнет необходимость использования длинных названий, то перед этой командой нужно поставить параметр LFNFOR ON, который активирует длинные имена. Для деактивации этого режима потребуется параметр ON заменить на OFF.

Некоторые операции с утилитами, например, сравнение файлов, обладающих заданным типом расширения, расположенных по различным адресам, а также копирование содержимого одной папки в другую, последовательное исполнение однотипных файлов и многих других, можно выполнить при помощи всего одной команды, помещенной в командный файл. При этом исполнение любой команды или файла можно совмещать с определенными пользовательскими действиями, благодаря чему можно значительно повысить удобство работы с большими пакетами данных.

Переходы в командных файлах

Чтобы систематизировать процесс исполнения команд батниках используются метки и команды перехода между ними. В качестве меток используются строки командного файла, в начале которых ставится двоеточие, после чего задается имя, которое может содержать любой набор символов. Для отделения имени от команды используется пробел. Помимо этого, для каждой метки юзер может создавать комментарий, что существенно упрощает работу с объемными файлами.
Для настройки перехода между метками предназначена команда GOTO, после которой через пробел указывается название одной из меток. Если система не смогла найти указанную метку или заданный параметр, то действие перехода на этой команде завершается.

Использование условий в работе командных файлах

Командные файлы позволяют работать с командами, которые попадают или не попадают под заданные юзером параметры. Для этого используется команда IF, после которой прописывается одно из следующих условий;
— ERRORLEVEL число — подразумевает истинность условия в том случае, если результат выполнения предыдущего приложения соответствует или превышает заданное значение;
— СТРОКА 1 == СТРОКА 2 — истинность значения подразумевается в том случае, если достигается полное соответствие между двумя строками;
— EXIST — имя файла — истинность сохраняется при наличии указанного файла;
— NOT — условие — истинное значение достигается при несоответствии заданного значения.

Какие команды используются в bat-файлах?

Чтобы получить список всех команд, использование которых допускается в командных файлах, необходимо запустить командную строку, прописать HELP и нажать клавишу Enter. После этого, на дисплей монитора будет выведен список всех команд с небольшим пояснением каждой из них. Если возникнет необходимость получить более подробное описание, то нужно просто ввести еще раз HELP с названием интересующей команды.

Работа командных файлов при резервном копировании данных

BAT-файлы очень сильно помогают в повседневной работе системных администраторов, которые используют их при выполнении самых различных задач, наиболее важной, среди которых является резервное копирование данных. Чтобы автоматизировать этот процесс в крупной корпоративной сети нужно в батник поместить команду COPY. Помимо этого, можно настроить расписание резервного копирования наиболее важных файлов с сохранением в указанную директорию просто создав в планировщике Windows запуск этого файла по определенным дням недели или датам.

Пакетные файлы и пакетные команды

.
ACINIUPD Изменение файлов INI (только TS ) N N Я N
ANSI.SYS Текстовые атрибуты, управление курсором и клавиатурой Я N N Я ANSI.COM (только DOS TSR)
ПРИЛОЖЕНИЕ Позволяет программам открывать файлы данных в указанных каталогах, как если бы они находились в текущем каталоге (DOS) Я Я Я Я DPATH
ARP Отображение или изменение таблиц преобразования IP-адресов в физические, используемых в ARP N Я Я Я
АССОК Свяжите расширение файла с типом файла или перечислите все ассоциации N N Я N
AT Планировщик командной строки N N Я Я JT, СЧТАСКС
ATTRIB Список атрибутов файлов и управление ими Я Я Я Я
AUTOFAIL Подавлять сообщения об ошибках сетевого подключения при запуске N N N Я
РЕЗЕРВНОЕ Резервные копии файлов на гибкие диски (требуется ВОССТАНОВЛЕНИЕ из той же самой версии DOS) Я Я N Я NTBACKUP, несколько коммерческих инструментов резервного копирования образов
BASICA Базовый интерпретатор для IBM PC-DOS Я N N N GWBASIC, QBASIC
BCDEDIT Устанавливает свойства в базе данных загрузки для управления загрузкой (Windows 7) N N W7 N
BOOTCFG Измените параметры загрузки Windows в BOOT.INI (XP) N N XP N
ПЕРЕРЫВ Включение / отключение расширенной проверки Ctrl + C (16 бит) Я Я Я Я
CACLS Чтение и установка прав доступа к файлам N N Я N ICACLS (Windows 7), SECEDIT, SUBINACL, XCACLS
ЗВОНИТЕ Запуск командного файла из другого командного файла Я Я Я Я
CD Показать или изменить текущий каталог (аналогично CHDIR) Я Я Я Я
CDBURN Запись образов ISO на компакт-диск (инструмент Windows Server 2003 Resource Kit) N N 2K3RK N Запись изображений
CERTREQ Запрос сертификатов в центре сертификации (Windows Server 2003) N N Я N
CERTUTIL Управление сертификатами (Windows Server 2003) N N Я N
ИЗМЕНИТЬ Изменить сопоставление портов TS , режим установки или включить / отключить TS вход в систему N N ТС N
CHCP Отображение или установка активной кодовой страницы Я Я Я Я РЕЖИМ
CHDIR Показать или изменить текущий каталог (аналогично компакт-диску) Я Я Я Я
CHGLOGON Включение / выключение TS вход в систему N N Я N
CHGPORT Изменить TS сопоставления портов N N ТС N
CHGUSR Изменить TS режим установки N N ТС N
CHKDSK Проверить диск на наличие ошибок файловой системы или битых секторов Я Я Я Я
ЧКНТФС Отображение или изменение проверки диска во время загрузки N N Я N
ВЫБОР Предложить пользователю выбрать вариант из списка вариантов 6 Я N N PMChoice
ШИФР Показать или изменить шифрование каталогов [файлов] на разделах NTFS N N Я N
CLEANMGR Автоматическая очистка временных файлов, кеша IE, загруженных файлов и корзины (XP) N N XP N
CLS Очистить экран / окно Я Я Я Я
CMD.EXE Интерпретатор команд (32- или 64-разрядный) N N Я Я
CMDKEY Управление сохраненными именами пользователей и паролями (Windows Server 2003 и более поздние версии) N N 2К3 N
ЦВЕТ Изменить цвет текста и фона в консоли N N Я N ЦВЕТ
КОМАНДА.COM Интерпретатор команд (16 бит) Я Я Я Я
КОМП Сравнить файлы Я Я Я Я FC, TxtComp, WINDIFF (графический интерфейс)
КОМПАКТНЫЙ Показать или изменить сжатие файлов на разделах NTFS N N Я N
% COMSPEC% Спецификация интерпретатора команд в основной среде Я Я Я Я
КОНТРОЛЬ Запустите панель управления или апплет панели управления N Я Я Я RUNDLL32 SHELL32.DLL, Control_RunDLL
КОНВЕРТ Преобразование тома FAT в NTFS N N Я N
КОПИЯ Копировать файлы Я Я Я Я ROBOCOPY, XCOPY
CPROFILE Чистые профили потраченного впустую места (Windows Server 2003) N N 2К3 N
CSCRIPT Интерпретатор консольного режима для VBScript / JScript N Я Я N
CSVDE Импорт / экспорт данных из Active Directory в формате CSV N N N
CTTY Перенаправить весь ввод и вывод в файл или (последовательное, параллельное или нулевое) устройство Я N N N
ДАТА Отображение и управление системной датой Я Я Я Я
ОТЛАДКА Отладчик и ассемблер Я Я Я Я
ДЕФРАГ Найдите и объедините фрагментированные загрузочные файлы, файлы данных и папки на локальных томах Я Я Я N
DEL Удалить один или несколько файлов Я Я Я Я
DELTREE Удалить всю папку, включая файлы и подпапки Я Я N N RD / S
DEVCON Диспетчер устройств командной строки (бесплатная загрузка Microsoft) N N Я N
DHCPLOC Обнаружение мошеннических DHCP-серверов N N XP N
DIANTZ Сжимайте и добавляйте файлы в новые или существующие.CAB-файлы (эквивалент MAKECAB) N N Я N MAKECAB
DIR Список файлов и каталогов Я Я Я Я
ДИСККОМП Сравнение двух дискет по трекам Я Я Я Я
ДИСККОПИЯ Копирование дискет по трекам Я Я Я Я
ДИСКОВАЯ ЧАСТЬ Управление разделами жесткого диска и логическими дисками N N N Acronis Disk Director
ДОСКЕЙ Редактировать или вызывать командные строки или создавать макросы командной строки Я Я Я Я
DPATH Позволяет программам открывать файлы данных в указанных каталогах, как если бы они находились в текущем каталоге (Windows 7, OS / 2) N N W7 Я ПРИЛОЖЕНИЕ
ЗАПРОС ВОДИТЕЛЯ Список установленных драйверов (Windows XP) N N XP N
DSADD Добавить объекты в (активный) каталог N N N
DSGET Показать (активный) свойства объекта каталога N N N
DSMOD Изменить объекты в (активном) каталоге N N N
DSMOVE Перемещение или переименование объектов в (активном) каталоге N N N
DSQUERY Запрос (активный) каталог N N N
DSRM Удалить объект из (активного) каталога N N N
DVDBURN Запись образов ISO на DVD (инструмент Windows Server 2003 Resource Kit) N N 2K3RK N Запись изображений
ECHO Отображение текста на экране Я Я Я Я
РЕДАКТИРОВАТЬ Текстовый редактор в MS-DOS 5+ (требуется QBASIC) Я Я Я N EDLIN
EDLIN Линейный редактор в MS-DOS 4- Я N N N EDIT, COPY CON, редакторы многих программистов
ENDLOCAL Завершить локальную среду N N Я Я
EPAL Программа запуска приложений с повышенными привилегиями (бесплатная загрузка Microsoft) N N Я N RUNAS, CPAU, PSEXEC, RunAs Pro
СТЕРЕТЬ Удалить один или несколько файлов Я Я Я Я
СОБЫТИЕ СОЗДАТЬ Записать событие в один из журналов событий N N XP N
EVENTQUERY.VBS Список событий и свойств событий N N XP N
СОБЫТИЯ Отображение и настройка «триггеров событий», которые отслеживают и действуют при возникновении событий журнала NT по заданным критериям N N XP N
ВЫХОД Завершить запуск командного файла или командной строки Я Я Я Я
РАСШИРЯТЬ Разворачивать сжатые файлы или папки на томах NTFS N N Я Я
EXPLORER Открыть папку в окне проводника N Я Я N
EXE2BIN Конвертировать.EXE файлы в двоичный формат (DOS) Я Я Я Я
FASTOPEN Открывайте программы DOS быстрее, запоминая их местоположение на диске (DOS) Я Я Я Я
FC Сравнить файлы Я Я Я Я COMP, TxtComp, WINDIFF (графический интерфейс)
FDISK Управление разделами жесткого диска и логическими дисками Я Я N Я DISKPART, Acronis Disk Director
FILEVER Показать версию файла программы N N Я N Находится в папке Support Tools на установочном компакт-диске Windows XP. Загрузите XP SP2 Support Tools
НАЙТИ Поиск файлов или стандартный вывод Я Я Я Я
FINDRAMD Найдите букву RAM-диска N Я N N
НАЙТИ Поиск файлов или стандартный вывод с расширенными параметрами N N Я Я EGREP
ДЛЯ Перебирать набор файлов или переменных Я Я Я Я ФОРФИЛИ (W2K3)
FORCEDOS Заставить XP запустить указанную программу в подсистеме MS-DOS N N XP N
FORFILES Выбирает и выполняет команду для файла или набора файлов N N 2К3 N ДЛЯ
ФОРМАТ Форматирование дисков (инициализация файловой системы) Я Я Я Я
ФСУТИЛ Управление файловыми системами FAT и NTFS (XP) N N XP N
FTP Клиент протокола передачи файлов N N Я Я TFTP, Fileaze
FTYPE Отобразить или определить команду «Открыть» для типа файла N N Я N
GETMAC Отображение MAC-адреса для локальных или удаленных сетевых адаптеров (XP и выше) N N XP N MacAddr
GETTYPE Запрашивает тип ОС, версию или SP и возвращает их как уровень ошибки (инструмент Resource Kit) N N Я N
GOTO Переход к метке или подпрограмме Я Я Я Я
GPRESULT Включить отображение расширенного набора символов в графическом режиме N N XP N
GRAFTABL Включить отображение расширенного набора символов в графическом режиме Я Я Я Я
GWBASIC Базовый интерпретатор для MS-DOS до версии 4 Я N N N BASICA, QBASIC
HELP Показать текст справки для команды Я Я Я Я
ICACLS Отображение, изменение, резервное копирование или восстановление списков ACL для файлов и каталогов (Windows 7) N N W7 N CACLS, SECEDIT, SUBINACL, XCACLS
IEXPRESS (Установка) скрипт-упаковщик (XP) N N XP N
IF Протокол испытаний Я Я Я Я
IFCONFIG Настроить сетевые адаптеры N N N Я
INUSE Заменить заблокированные файлы при следующей перезагрузке (инструмент Resource Kit) N N Я N
IPCONFIG Настроить сетевые адаптеры N Я Я N
JT Планировщик командной строки для Windows 2000 и новее (утилита Resource Kit) N N N АТ, СЧТАСКС, Fileaze
ТАБЛИЧКА Показать или установить метку тома диска Я Я Я Я
LFNFOR Указывает команде FOR использовать либо «8.3-дюймовые или длинные имена файлов N Я N N
LH Загрузить TSR в верхнюю память (так же, как LOADHIGH) Я Я N N
ВЫСОКАЯ НАГРУЗКА Загрузить TSR в верхнюю память (как LH) Я Я N N
ЗАМОК Предоставлять 16-битным программам DOS прямой доступ к диску N Я N N
LOGMAN Инструмент управления системным монитором из командной строки N N W2K8 N
ВЫХОД Выход / завершение сеансов Windows TS или (локально) OS / 2 N N ТС Я
MAKECAB Сжимайте и добавляйте файлы в новые или существующие.CAB-файлы (эквивалент DIANTZ) N N Я N ДИАНТЦ
MD Создать новый (под) каталог (такой же, как MKDIR) Я Я Я Я
MEM Проверить использование памяти (только для MS-DOS и 16-разрядных сеансов) Я Я Я Я
MKDIR Создайте новый (под) каталог (такой же, как MD) Я Я Я Я
MKLINK Создать символическую ссылку N N W7 N СОЕДИНЕНИЕ
РЕЖИМ Настраивает системные устройства Я Я Я Я
БОЛЬШЕ Отображает вывод по одному экрану за раз Я Я Я Я
МОНТВОЛ Создание, удаление или перечисление точек подключения тома (XP) N N XP N
ПЕРЕМЕЩЕНИЕ Перемещение или переименование файлов или папок Я Я Я Я
MSD Запрос базовой информации о конфигурации системы (MS-DOS 6 и 7) Я Я N N несколько (коммерческих) системных инструментов инвентаризации
MSG Отправить всплывающее сообщение TS пользователей / сеансов N N ТС N
MSIEXEC Установка, изменение и выполнение операций в установщике Windows из командной строки N Я Я N
MSINFO32 Запрос информации о базовой конфигурации системы (Windows 2000+) N Я N SYSTEMINFO, WINMSD, несколько (коммерческих) инструментов инвентаризации системы
NBTSTAT Отображение статистики протокола и текущих соединений TCP / IP с использованием NBT N N Я N
НЕТТО Средство командной строки NetBIOS N Я Я Я
NETDOM Управление доменами и доверительными отношениями (присоединение компьютеров к домену, переименование компьютеров и т. Д.) N N XP N
NETSH Инструмент настройки сети из командной строки для Windows XP и более поздних версий N N XP N
NETSTAT Средство командной строки NetBIOS N Я Я Я
NLTEST Командная строка Средство управления сетевым входом N N XP N
ПРИМЕЧАНИЕ Текстовый редактор (редактирование графического интерфейса, командная строка и печать графического интерфейса) N Я Я N Многие редакторы программистов
NSLOOKUP Диагностика DNS Инфраструктура N N Я N (PING -a для поиска имен хостов)
NTBACKUP Резервное копирование файлов на любой носитель, поддерживаемый Windows N N Я N Несколько коммерческих инструментов резервного копирования образов
OCSETUP Установка дополнительных компонентов Windows (Windows 7) N N Vista N
ODBCCONF Инструмент настройки MDAC ODBC N N Я N
ОТКРЫТЬ Список или отключение открытых файлов и папок N N Я N
ПУТЬ Отображение или изменение пути поиска программы Я Я Я Я
ПУТЬ Расширенная утилита PING N N N TRACERT
ПАУЗА Подождите, пока не будет нажата клавиша Я Я Я Я
PENTNT Обнаруживает ошибку деления с плавающей запятой (если присутствует) в чипе Pentium, отключает оборудование с плавающей запятой и включает эмуляцию с плавающей запятой N N Я N
ПИНГ Проверить TCP / IP-соединение с удаленным IP-адресом N Я Я Я
PING6 IPv6 версия PING N N Я N
ПКГМГР Диспетчер пакетов командной строки N N Vista N
POPD Перейти к последнему каталогу, который был «помещен» в стек PUSHD N N Я Я
POWERCFG Настройка управления питанием (Windows Server 2003) N N 2К3 Я
ПЕЧАТЬ Распечатать текстовый файл Я Я Я Я
PRINTUI.EXE Сокращенная команда для RUNDLL32 PRINTUI.DLL, PrintUIEntry (Windows 7) Я Я W7 Я
PRNCFG.VBS Настроить или отобразить информацию о конфигурации принтера N N N
PRNDRVR.VBS Добавить, удалить или перечислить драйверы принтера N N N
PRNJOBS.VBS Приостановка, возобновление, отмена или список заданий на печать N N N
PRNMNGR.VBS Добавить, удалить или перечислить принтеры или подключения принтеров; установить или отобразить принтер по умолчанию N N N
PRNPORT.VBS Создание, удаление или перечисление стандартных портов принтера TCP / IP; отобразить или изменить конфигурацию порта N N N
PRNQCTL.VBS Распечатать тестовую страницу; приостановить или возобновить работу принтера; очистить очередь принтера N N N
PROMPT Настроить строку приглашения DOS Я Я Я Я
ПУБПРН.VBS Опубликовать принтер в Active Directory N N N
PUSHD Перейти в новый каталог, «проталкивая» текущий каталог в стек N N Я Я
QAPPSRV Доступен запрос TS серверов приложений N N ТС N
QBASIC Базовый интерпретатор для MS-DOS 5+ Я N N N BASICA, GWBASIC
QCHAIN ​​ Установить несколько исправлений с одной перезагрузкой N N Я N
QFARM Запрос локальный TS ферма N N ТС N
QPROCESS Запрос TS серверов для запущенных процессов N N ТС N
QSERVER Доступен запрос с поддержкой ICA TS серверов N N ТС N
ЗАПРОС Запрос TS ресурсов N N ТС N
QUSER Запрос выполнен TS пользователей N N ТС N
QWINSTA Запрос TS сеансов N N ТС N
НАБОР Использовать существующие соединения RAS / DUN N N Я N
РАСФОН Управление подключениями RAS / DUN N N Я N
RD Удалить (под) каталог (такой же, как RMDIR) Я Я Я Я
РЕДЛИН Прочитать одну строку из стандартного вывода N N N Я
RECIMG Настраивает образ восстановления, который Windows использует для обновления вашего ПК N N W7 N
ВОССТАНОВИТЕЛЬ Восстановление читаемой информации с плохого или неисправного диска (иногда может уничтожить другие файлы в процессе) Я Я Я Я STRINGS, несколько коммерческих инструментов восстановления удаления и восстановления файлов
REG Чтение и запись реестра (W2K и выше) N N N
РЕГЕДИТ Чтение и запись реестра (графический интерфейс и командная строка) N Я Я Я
REGEDT32 Чтение и запись реестра (включая настройку прав доступа) N N Я N REG, REGEDIT, SECEDIT
РЕГИНИ Чтение и запись реестра, включая разрешения (NT4 Resource Kit, встроенный в XP) N N Я N SUBINACL, СЕКРЕДИТ
REGSVR32 Реестр.Файлы DLL и .OCX как компоненты команд в реестре N N Я N
REM Вставить строку комментария Я Я Я Я
REN Переименование файла или папки (аналогично ПЕРЕИМЕНОВАТЬ) Я Я Я Я Команда массового переименования, массовое переименование (GUI)
ПЕРЕИМЕНОВАТЬ Переименовать файл или папку (как REN) Я Я Я Я
ЗАМЕНИТЬ Копировать только файлы, которые уже существуют в целевом каталоге, или копировать только файлы, которые еще не существуют Я Я Я Я XCOPY / U
СБРОС СЕССИИ Сброс TS подсистемы сеанса по умолчанию N N ТС N
ВОССТАНОВИТЬ Восстановить файлы, зарезервированные с помощью BACKUP (из той же самой версии DOS) Я Я N Я NTBACKUP, несколько коммерческих инструментов резервного копирования образов
RMDIR Удалить (под) каталог (такой же, как RD) Я Я Я Я
ROBOCOPY Копирование каталогов, необязательно включая деревья подкаталогов и / или разрешения, и необязательно удаление удаленных файлов в целевом каталоге (служебная программа Resource Kit, встроенная в Windows 7) N N Я N
МАРШРУТ Отображение и изменение записей в локальной таблице IP-маршрутизации N N Я Я
РУНАС Запустите команду с разными учетными данными ( всегда будет запрашивать пароль ; используйте CPAU, если вам нужно сделать это автоматически) N N N CPAU, EPAL, PSEXEC, RunAs Pro
РУНДЛ Оболочка командной строки для 16-битных подпрограмм DLL N Я Я Я
RUNDLL32 Оболочка командной строки для 32-битных подпрограмм DLL N Я Я N
SC Управление службами командной строки (XP) N N N УСЛУГИ.MSC (графический интерфейс), SUBINACL
СЧТАСКС Планировщик задач из командной строки (XP) N N XP N AT, JT
СЕКЕДИТ Настройка и анализ безопасности системы путем сравнения текущей конфигурации с шаблоном (Windows 2000+) N N N CACLS, ICACLS (Windows 7), REGINI, SUBINACL, XCACLS
НАБОР Управление переменными среды Я Я Я Я
SETLOCAL Запустить локальную среду N N Я Я
SFC Проверяет целостность всех защищенных системных файлов и заменяет неправильные версии на правильные. N N N
ТЕНЬ Мониторинг или управление сеансом TS N N ТС N
ОБОЛОЧКА Спецификация основного интерпретатора команд в CONFIG.SYS Я Я N Я
СМЕЩЕНИЕ Анализировать переменные командной строки в пакетных файлах Я Я Я Я
ВЫКЛЮЧЕНИЕ Выключение компьютера (служебная программа Resource Kit для NT 4 и 2000, встроенная в XP и более поздних версиях) N N Я N ЦШУТДН, ПССХУТДАУН
СОРТИРОВАТЬ Прочитать файл или стандартный ввод и вернуть его отсортированным по алфавиту Я Я Я Я
СТАРТ Выполнить команду в отдельном процессе или запустить файл с соответствующим приложением по умолчанию N Я Я Я
SUBINACL Отображение / изменение ACE для прав доступа к файлам и папкам, владения и домена (служебная программа Resource Kit) N N Я N CACLS, ICACLS (Windows 7), REGINI, SC, SECEDIT, XCACLS
ПОД Свяжите или отключите псевдоним диска с путем Я Я Я Я
СИСТЕМИНФО Запрос информации о базовой конфигурации системы N N XP N WINMSD, несколько (коммерческих) инструментов инвентаризации системы
ТАСККИЛЛ Убить активный процесс (XP) N N XP N ПСКИЛЛ
СПИСОК ЗАДАЧ Список активных процессов (XP) N N XP N ПСЛИСТ
ВРЕМЯ Отображение и управление системным временем Я Я Я Я
НАЗВАНИЕ Установить заголовок окна командной строки N N Я N
TRACERT Анализировать время отклика на маршруте к удаленному IP-адресу N Я Я N
TRACERT6 IPv6 версия TRACERT N N Я N
TRACERTE Анализировать время отклика на маршруте к удаленному IP-адресу (OS / 2) N N N Я
ДЕРЕВО «Графически» отобразить структуру папок на диске или пути Я Я Я Я
TRUENAME Показать реальный полный путь Я Я Я Я
TSCON Присоединить сеанс пользователя TS к сеансу терминала N N ТС N
TSDISCON Отключить сеанс терминала TS N N ТС N
TSKILL Завершить процесс в сеансе TS N N ТС N ПСКИЛЛ
ЦПРОФ Копирование / обновление TS информация о конфигурации пользователя N N ТС N
ЦШУТДН Выключите или перезагрузите сервер TS N N ТС N PSSHUTDOWN
ТИП Отображение содержимого текстового файла в консоли Я Я Я Я
TZCHANGE Настройка / изменение часовых поясов N N XP N
РАЗБЛОКИРОВАТЬ Отменить 16-битный прямой доступ к диску, предоставленный командой LOCK N Я N N
VER Показать версию ОС Я Я Я Я
ПРОВЕРИТЬ Включение / отключение проверки операций записи на диск Я Я Я Я
VHDMOUNT Монтирование и доступ к файлам VHD как виртуальным дискам (часть Virtual Server 2005 R2 SP1) N N N
ТОМ Показать метку тома диска Я Я Я Я
WIAACMGR Запустить диалоговое окно сканера «Новое сканирование»
N N W7 N
WINMSD Запрос информации о базовой конфигурации системы (для Windows NT 4; в Windows 2000 WINMSD был заменен на MSINFO32) N N NT4 N MSINFO32, SYSTEMINFO, несколько (коммерческих) инструментов инвентаризации системы
WINMSDP Вспомогательный инструмент командной строки для WINMSD N N NT4 N
WINSAT Оценка различных функций, возможностей и атрибутов компьютера (Windows Vista и более поздние версии) N N Я N
WMIC Запрос и управление объектами в WMI (Windows XP Pro и выше) N N Я N
WSCRIPT Интерпретатор режима графического интерфейса пользователя для VBScript / JScript N Я Я N
WUPDMGR Запустите Центр обновления Windows N Я 2K / XP N Используйте КОНТРОЛЬ / назовите Microsoft.WindowsUpdate для Windows 7..10
XCACLS Чтение и установка прав доступа к файлам (улучшенный CACLS из наборов ресурсов) Я Я Я Я CACLS, ICACLS (Windows 7), SECEDIT, SUBINACL
XCOPY Копирование файлов и каталогов с расширенными параметрами Я Я Я Я ROBOCOPY, XXCOPY

Пакетные команды и команды пакетного файла с первого взгляда

4

4 изменяет расширение файла (например,г. .txt или .jpg)

4 84 84

4 84 84 cd

, 8, 10

0005

4

4

4 XP запускает подсказку

4

4 84

4 84

7,

84

4 85 84 85 Vista

4 4

endlocal

8 54 своих свойств.Это запускается с помощью cscript

9384

8457

Виста

9000 4

fc

84

74 Vista

4 , 4 84

4 84 XP Vista

854

4 7, 80004 7 938 и предупреждения»

XP

938 938 938 938 938 938 938 938 54000

9385 панель управления

4

XP

7 9385

4 сетевых служб 000 9385 9385 9385 9385 9385 9385

003 9385 9385 9385 9385 9385 9385 9385 9385 9385 9385 путь поиска для выбранной программы

9 0004

perfmon

4 проверено подключение к другому устройству с этим

30005 84

Vista

003

Позволяет восстанавливать читаемые файлы с поврежденного носителя данных

4 84 XP

4 84

Vista

9,

7 9384

7 9384 938 84 84

7, 8, 10

или стандартного ввода 938 857 74 XP

05

клиент может быть установлен с этим

900 04

7, 8, 10

0005000

000

TFTP, файлы на TFTP-сервер могут быть переданы

84 0

4 4 70004

8, 10

Пакетная команда

Результат

Версии Windows

0

0 0

XP

Vista

7, 8, 10

at

Запускает команду или программу в определенное время; затем вводится в «Запланированные задачи»

XP

Vista

7

attrib

Отображает или изменяет атрибуты файла (например, размер файла, дату модификации, место хранения)

XP

Vista

7, 8, 10

cacls

Отображает или изменяет ACL (разрешения доступа) для файлов Vista

7, 8, 10

вызов

Извлекает командный файл внутри другого

XP

Vista

957

Переход в другой каталог или другую папку

XP

9 3854 Vista

7, 8, 10

chcp

Отображает или изменяет текущую кодовую страницу, таблицу символов или карту символов

XP

chdir

Изменяет каталог или отображение его имени

XP

Vista

7, 8, 10

Проверяет носитель данных на наличие ошибок

XP

Vista

7, 8, 10

chkntfs Отображает проверку или запускает системный носитель данных

вверх

XP

Vista

7, 8, 10

93 854 выбор

Делает возможными запросы да / нет или диалоги выбора A / B / C / D, включая возвращаемое значение

7, 8, 10

cipher

Позволяет кодировать каталоги (в разделах типа NTFS) или отображать базовую кодировку

XP

Vista

7, 8, 10

938

Удаляет все содержимое экрана

XP

Vista

7, 8, 10

cmd

7, 8, 10

cmstp

Позволяет устанавливать профили в c onnection manager

XP

Vista

7, 8, 10

цвет

Изменяет цвет фона текущей панели Vista

7, 8, 10

comp

Сравнивает содержимое двух или более файлов

XP

Vista

compact

Показывает или изменяет сжатие файлов в разделах типа NTFS

XP

Vista

7, 8, 10

9384

00 преобразовать Преобразует диски FAT в NTFS

XP

Vista

7, 8, 1 0

копия

Позволяет копировать файлы

XP

Vista

7, 8, 10

интерпретатор для VBScript / JScript

XP

Vista

7, 8, 10

дата

Отображает и адаптирует системную дату и время XP

7

005

Vista

7, 8, 10

дефрагментация

Позволяет дефрагментировать диски

XP

Vista 9384,

del

Удаляет отдельные файлы

XP

9 3854 Vista

7, 8, 10

dir

Отображает все содержимое каталога

XP

Vista

938 54

diskcomp

Сравнивает содержимое двух разных дисков

XP

Vista

7, 8, 10

admin diskpart 938 носители данных непосредственно внутри панели

XP

Vista

7, 8, 10

DISM

С помощью DISM можно перечислить, установить компоненты и пакеты образов Windows , удален, настроен или обновлен.

7, 8, 10

doskey

Создает макросы, вызывает команды, введенные ранее XP, и редактирует ввод команды

7, 8, 10

запрос драйвера

Отображает драйвер для устройств, установленных на компьютере

XP

Vista

, ,

echo

Отображение уведомлений внутри панели, а также включение и выключение отображения команд

XP

Vista

7, 8, 10

Завершает сеанс, начатый с setlocal

X P

Vista

7, 8, 10

удалить

Удаляет один или несколько файлов

XP

errorlevel

Показывает, была ли команда успешна (0 означает да, 1 означает нет)

XP

Vista

7, 8, 10

eventcreate

Входит в журнал событий

XP

Vista

7, 8, 10

Eventquery

XP

событийных триггеров

Отображает или настраивает триггеры XP в журнале событий

7

существует

Проверяет, существует ли файл

XP

Vista

7, 8, 10

0050005

7, 8, 10

0050005 Закрывает командный файл или командную строку

XP

Vista

7, 8, 10

expand

Распаковывает сжатые файлы или папки XP

7

7, 8, 10

Сравнивает разные данные и отображает различия

XP

Vista

7, 8, 10

Поиск в одном или нескольких файлах

Поиск для поиска

путем ввода символов

XP

Vista

7, 8, 10

findstr

Поиск строк в файле, e.г. в имени файла или тексте

XP

Vista

7, 8, 10

для

Создает цикл for (), который извлекает команды так часто, как указано внутри скобок

XP

Vista

7, 8, 10

формат

Позволяет отформатировать носитель данных XP

7, 8, 10

fsutil

Отображает и настраивает свойства файловой системы

XP

Vista

ftp

Позволяет загружать и скачивать файлы через FTP (протокол передачи файлов), например.г. на сервер

XP

Vista

7, 8, 10

ftype

Отображает типы файлов и их назначение

7, 8, 10

getmac

Отображает MAC-адреса (идентификатор устройства) для сетевых адаптеров (локальных или удаленных)

XP

9000 Vista5

7, 8, 10

goto

Позволяет перейти к определенной точке в пакетном файле

XP

Vista

, 10

gpresult

Отображает групповые инструкции, которые используются на компьютере или для определенного пользователя

XP

Vista

7, 8, 10

gpupdate

Позволяет обновлять групповые рекомендации

XP

XP

XP 7, 8, 10

graftabl

Отображает специальные символы в графическом режиме

XP

Vista

7, 8, 10

9000

9000 help5

Отображает все команды cmd внутри панели

XP

Vista

7, 8, 10

имя хоста

XP

Отображает имя компьютера

Vista

7, 8, 10

ic acls

Позволяет отображать, изменять, защищать или извлекать списки ACL и управление доступом для файлов и каталогов

7, 8, 10

Позволяет интегрировать условия внутри командных файлов, аналогично JavaScript, например

XP

Vista

7, 8, 10

ipconfig

ipconfig

Конфигурирует настройки IP-сети

XP

Vista

7, 8, 10

irftp

Отправляет файл XP000 на инфракрасный интерфейс

7

005 Vista

7, 8, 10

этикетка

938 54 Изменяет обозначение носителя данных

XP

Vista

7, 8, 10

logman

Администрирует службу «Журналы производительности

Vista

7, 8, 10

lpr

Позволяет отправить задание печати на принтер в сети

XP

XP

mkdir

Создает каталог

XP

Vista

7, 8, 10rie

7, 8, 10rie

XP

Vista

7, 8, 10

Режим

Конфигурирует системные интерфейсы и устройства

XP

Vista

7, 8, 10

страница данных 9 -страница на экране

XP

Vista

7, 8, 10

mountvol

Создает, удаляет или перечисляет точку монтирования для носителя данных

Vista

7, 8, 10

переместить

Переименовывает или перемещает файлы или каталоги

XP

938 , 10

openfiles

Позволяет отображать или разделять файлы или директорию открытыхmsi-пакеты (файлы MSI также называются файлами пакетов установщика Windows)

XP

Vista

7, 8, 10

net

Администрирование и отображение

XP

Vista

7, 8, 10

netsh

Управляйте и настраивайте компоненты сети с помощью командной строки

XP

5

4 XP

7, 8, 10

netstat

Отображение соединений TCP-IP и их статуса

XP

Vista

7,

00 900

nslookup

Запрашивает DNS-сервер

XP

ntbackup

Запускает NTBackup через CommandLine / запускается Тихо

XP

XP

Vista

7, 8, 10

pathping

Тестирует XP соединение с выбранным IP-адресом

Vista

7, 8, 10

пауза

Пакетный файл, выполняемый в данный момент, остановлен, и на панели появится сообщение «Нажмите любую клавишу»

XP

Виста

7, 8, 10

Запускает монитор производительности для Windows

XP

Vista

7, 8, 10

ping

XP

Vista

7, 8, 10

печать

Распечатывает текстовый файл XP

XP

7, 8, 10

prncnfg

После запуска cscript информация о конфигурации принтера может быть отображена или изменена

XP

prndrvr

После запуска cscript драйверы принтера можно удалить добавлено, добавлено или удалено

XP

prnjobs

После запуска cscript, задания печати в очереди могут быть отображены, остановлены или повторены 9384 9385 9384 9385 XP

prnmngr

После запуска cscript можно добавить принтеры или подключения к принтеру или определить стандартный принтер

XP

prnport

После запуска cscript порты принтера могут быть созданы, удалены или перечислены.

XP

подсказка

Изменяет подсказку (например, «Доброе утро!» Вместо «Нажмите любую клавишу XP»)

7, 8, 10

rd

Удаляет каталог

XP

Vista

7, 8, 10

reg

Записи в реестр могут быть добавлены , чтение, импорт или экспорт

XP

Vista

7, 8, 10 938 57

regsvr32

.dll и .ocx файлы и программные библиотеки могут быть зарегистрированы в реестре

XP

Vista

7, 8, 10

rem

Все команды после rem обрабатываются как комментарии панели

XP

Vista

7, 8, 10

переименовать

Файлы можно переименовать с помощью этой команды

7, 8, 10

заменить

Файлы можно заменить или перезаписать с помощью этой команды

XP

Vista

сброс сеанса

Сеансы можно разделить с помощью сброса

XP

Vista

7, 8, 10

rmdir

Удаляет каталог

XP

rd

Удаляет каталог

XP

Vista

7, 8, 10

rsmг. CD-ROM) можно администрировать или управлять

XP

schtasks

Запланированные задачи на текущем или удаленном компьютере можно создавать, изменять, выполнять

XP

Vista

7, 8, 10

secedit

Разрешения можно сравнить с помощью шаблонов, чтобы проверить безопасность системы

7 938 XP

Vista

7, 8, 10

набор

Позволяет читать и удалять переменные внутри подсказки

XP

выключение

Компьютер может вести журнал отключен, перезапущен или выключен

XP

Vista

7, 8, 10

sort

Сортировка текущей задачи чтения файла

XP

Vista

7, 8, 10

start

Некоторые окна, определенные программы или команды могут быть запущены

XP

7, 8, 10

subst

С помощью этой команды можно указать путь к метке диска (например,г. “C:”)

XP

Vista

7, 8, 10

systeminfo

Можно запросить информацию о конфигурации системы компьютера

Vista

7, 8, 10

taskkill

Используется для немедленного закрытия активных процессов

XP

10

список задач

Извлекает все активные задачи и процессы

XP

Vista

7, 8, 10

XP

Vista

telnet

С помощью этого можно установить Telnet-соединения

XP

3

XP

время

Устанавливает или отображает системное время XP

7, 8, 10

таймаут

Можно установить выбранный период времени, в течение которого ничего не произойдет

Vista

заголовок

Заголовок окна подсказки может быть установлен с этим

XP

Vista

7, 8, 10

дерево

Графическое отображение файловой структуры

XP

XP

XP

7, 8, 10

тип

С его помощью можно отображать содержимое текстовых файлов

XP

Vista

7, 80005

ver

Может отображаться текущая версия операционной системы

XP

Vista

7, 8, 10

проверить

правильно ли записаны файлы на носитель данных

XP

Vista 9385 7

7, 8, 10

vol

С его помощью можно отобразить этикетку и серийный номер носителя данных

XP

Vista

Команды Bat-File (Windows)

При работе на компьютере, необходимость повторения одних и тех же команд DOS для выполнения периодически выполняемых действий, построения сложной и многоуровневой последовательности исполняемых команд или приложений, автоматизации работы с приложениями и файлами с участием пользователя или без него.В операционной системе возможно записать несколько команд в файл bat. Просто запустив этот командный файл (часто называемый сценарием или просто «пакетным файлом»), вы можете выполнить написанные вами команды, а зарегистрировав его в событиях планировщика Windows, вы можете автоматизировать этот процесс.

Особенностью этого типа файла является отсутствие в любом коде - есть только информация о часах, которую командный процессор DOS считывает и выполняет, совместимая практически со всеми версиями операционной системы Windows.Одним из ярких примеров является файл autoexec.bat, который требуется для запуска этой ОС, поскольку именно он выполняет свои настройки во время запуска.

Основные возможности пакетных файлов

Команды, которые содержат bat-файл, можно разделить на несколько групп по функционалу:

- предназначены для отображения определенного значения, фразы, приложения или информации;
- для запуска пакетных документов;
- для работы с циклами;
- создавать ветвление исполнения с помощью условий;
- для работы с приложениями.

Выполнение командных файлов

Запуск bat-файлов может выполняться различными способами. При работе в командной строке в текущем каталоге вы можете просто ввести имена файлов с дополнительными параметрами или без них. В этом случае команды bat-файла будут выполняться последовательно после запуска, одна за другой, без вмешательства пользователя.

Когда командный файл найден в другом каталоге Помимо полного имени этого файла, необходимо указать полный путь к каталогу хранилища.Расширение файла также можно не указывать. Например, текущий каталог - d: photowork, а командный файл vera.bat, который вы хотите запустить с параметрами resize.doc и / p, находится в каталоге d: photohome. Затем, чтобы запустить наш файл, вам нужно установить команду d: photohomevera resize.doc / p или команду ..homevera resize.doc / p.

Прерывание работы

Выполняемая после запуска bat-файла команда может быть прервана комбинацией кнопок + и + .Дисплей попросит вас прервать выполнение командного файла запросом, ожидающим ввода Да или Нет. Если вы введете Y, выполнение будет прервано, а оставшийся список команд файла bat будет проигнорирован. Если вы введете символ N, выполнение продолжится со следующей команды из списка.

Вызов другого командного файла

Bat-файлы могут содержать ссылки на выполнение других скриптов. Если просто записать bat-файл в теле скрипта, то команды после него не будут выполняться, так как управление передается другому командному файлу и команды будут выполняться уже из него.Если вы хотите вернуться после запуска внутреннего файла, вы можете вызвать его с помощью команды CALL. Формат команды выглядит так: CALL filename -bat file [параметры запуска].

Параметры, которые передаются вызываемому командному файлу (файлам), обычно представляют собой символы% 1 -% 9. Когда все команды bat-файла проходят последовательно, выполнение исходного сценария будет продолжено со следующей строки.

Пошаговое выполнение

Бывают случаи, когда команды bat-файла нужно выполнять пошагово (с остановкой после каждой строки).Чаще всего этот режим требуется при отладке или тестировании скриптов. Запись команды выглядит так: КОМАНДА / y / c имя _screen [параметры].

При выполнении по каждой команде будет выдан запрос Y или N. Если требуется выполнить команду - нажмите Enter или Y. Если вам нужно пропустить команду - нажмите ESC или N.

Отключить и включить команды отображения

При запуске bat-файла команды построчно перед выполнением отображаются на экране и затем выполняются.Иногда это вызывает неудобства, так как с большим пакетным файлом команды запускают длинный список перед пользователем на экране, а иногда их нужно показать, например, для диалога или отладки. Для отображения командного файла bat используется команда ECHO ON. Чтобы отключить этот режим, вам нужно войти в ECHO с параметром OFF. В этом случае все дальнейшие выполняемые команды не будут отображаться на экране.

Чтобы отключить только один выход Строки командного файла на экране могут использоваться в самом начале этой строки с символом @.Чаще всего этот символ можно встретить в паре с командой @ECHO OFF, чтобы предотвратить его отображение на дисплее монитора. Этот режим часто используется злоумышленниками, создающими вирусы на основе bat-файлов или вызывающими мелкие и серьезные проблемы для пользователей компьютеров.

Сообщения при выполнении команд

Если после команды ECHO будут находиться символы, отличные от ON или OFF, они будут отображаться в любом режиме. Если ECHO без параметров, то он отображает состояние режима отображения исполняемых команд - включено или выключено.

При желании можно даже проиграть звуковой сигнал (писк) компьютера с помощью bat файла. Команды, примеры которых приведены ниже, основаны на операторе ECHO с добавлением специальных символов.

Чтобы воспроизвести звуковой сигнал, необходимо отобразить стандартный символ с кодом 7. Это можно сделать, нажав клавиши и «7» на цифровой клавиатуре (помечены как home).

Чтобы улучшить читаемость сообщений, можно использовать команду ECHO с символом ".»(ставится сразу после команды без пробела) или специальным символом с кодом 255. На экране он будет выглядеть как пустая строка.

Команда ECHO может использоваться для вывода сообщений в отдельный файл. Суть его в том, чтобы перенаправить вывод сообщений на запись в файл, а не на экран монитора.Для сохранения логов, анкет, записи событий можно использовать файлы bat bat.Команды вывода имеют следующий формат:

- ECHO сообщение >> имя файла - команда добавляет строку в конец существующего файла.Если в этом каталоге нет такого файла, создается новый файл.

- Сообщение ECHO> имя файла - эта команда создается новый файл и в него записывается текущая строка. Если в текущем каталоге есть такой файл, его содержимое будет удалено, а команда или ее результат будут записаны.

Использование комментариев

Для удобства редактирования скриптов используется команда REM. Все команды bat после него игнорируются Windows во время выполнения. Их можно увидеть при редактировании и пошагово.Во всех остальных случаях комментарии не будут отображаться на экране.

Задержка команды в bat-файле

Иногда во время пакетного файла возникает необходимость временно остановить выполнение команд, например, дождаться ответа пользователя, увеличить время чтения длинного сообщения, вставить диск, для подтверждения присутствия пользователя или для отладки командного файла. Команда задержки в файле bat записывается как ПАУЗА без параметров. В то же время на дисплее появится сообщение типа «Нажмите любую клавишу, чтобы продолжить», и сценарий будет приостановлен, пока вы не нажмете кнопку клавиатуры.Если нажать комбинацию + или + , система примет это как завершение исполняемого файла и попросит вас подтвердить его завершение: «Остановить выполнение командного файла. ? (Д / Н) ". Если вы нажмете клавишу Y, сценарий будет прерван в этом месте, а все оставшиеся невыполненные команды будут проигнорированы. Если вы нажмете N, выполнение будет продолжено со следующей команды. При приостановке, нажатие любой другие буквенно-цифровые клавиши, а также «Пробел» и «Ввод», выполнение исполняемого файла продолжится со следующей команды.

Выполнить команду для списка файлов

Для последовательного выполнения нескольких файлов из списка в одном каталоге также можно использовать bat-файл. Команды «запуск программы по имени» и «запуск программы по расширению файла» часто могут помочь в автоматизации обработки документов, например в сортировке почтовых вложений. Они отличаются параметрами для команды FOR. Формат записи приведен ниже:

- FOR% x IN (список файлов) команда DO, где:

- x - любой символ, кроме чисел от 0 до 9;

- список - имена файлов, разделенные пробелами, или имя отдельного файла; вы можете использовать специальные символы «?» и «*» для замены от одного до нескольких символов в имени файла;

- команда - любая команда или программа DOS, кроме FOR; если есть необходимость использовать FOR, то вместо% x нужно указать %% x.

При использовании этой команды для записи bat-файлов необходимо учитывать, что имена в программах формата DOS имеют ограничение на длину имени. Для того, чтобы переключить команду FOR на работу с длинными именами файлов, необходимо: не забудьте запустить команду LFNFOR ON, чтобы включить режим работы с длинными именами, и LFNFOR OFF, чтобы выключить его и вернуться к стандартной длине файла.

Многие функции программ, такие как сравнение файлов с определенными типами расширений, расположены в o

Как запустить файл CMD или BAT

В следующей статье используются параметры, доступные начиная с версии Professional и типа проекта.

Установщик Windows не может запускать пакетные файлы напрямую с помощью установленных или прикрепленных настраиваемых действий. Однако в Advanced Installer вы можете запустить файл CMD или BAT с помощью предопределенного настраиваемого действия Launch file. В случае 64-битного файла CMD или BAT вы можете просто включить опцию Use 64-bit Launcher .

Поскольку файлы не могут быть прикреплены к MSI, они должны присутствовать на целевой машине при запуске настраиваемого действия. Это можно сделать двумя способами:

  1. Добавьте файл CMD или BAT на страницу файлов и папок .Таким образом, файл будет установлен пакетом, и его можно будет запустить после этапа выполнения установки -> Добавить ресурсы . В этом случае настраиваемое действие должно быть установлено как «Отложено» на странице свойств настраиваемого действия, чтобы убедиться, что оно может получить доступ к установленному файлу.
  2. Другой подход - добавить файл CMD или BAT в качестве временного файла . Таким образом, файл копируется на целевой компьютер после этапа диалоговых окон мастера -> Разрешение путей -> CostFinalize и удаляется после этапа Install Execution -> Finish Execution -> InstallFinalize .В этом случае настраиваемое действие может использовать любой вариант выполнения.

После добавления файла на страницу «Файлы и папки» вы можете настроить настраиваемое действие.

Поле Файл для запуска должно содержать полный путь к файлу, который нужно запустить. Это поле имеет форматированный тип и, следовательно, может включать ссылки на файлы, папки и свойства. Например, если файл называется «MyBatchFile.bat» и добавлен как обычный файл, вы можете добавить ссылку на него в поле «Файл для запуска» следующим образом:

Для временного файла Файл для запуска »будет выглядеть так:

Передайте параметры в.bat файл:

Чтобы передать параметры в файл BAT, вы можете добавить их в поле командной строки из свойств настраиваемых действий, примерно так:

 "[APPDIR]" [ProductVersion] 
Копировать

Если свойство значение содержит пробелы, оно должно быть заключено в кавычки.

В файле .bat откройте параметры командной строки с помощью% 1,% 2 и т. Д. Например:

Поле «Условие» на странице свойств настраиваемого действия должно содержать условие настраиваемого действия.Отредактируйте это поле с помощью Smart Condition Edit Control.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *