Пакетные файлы (bat, батники) windows
Содержание:
Как создать файл с расширением BAT в Windows 10/8/7
Поскольку батник представляет собой обычный текстовый файл с необычным контентом, для его создания сгодится практически любой текстовый редактор. Разумеется, потребуется также знание синтаксиса языка командной строки. Использовать Word – не самый оптимальный способ, гораздо проще задействовать «Блокнот», но ещё лучше воспользоваться Notepad++, поскольку этот редактор обладает полезной «фишкой» – умеет подсвечивать синтаксис, облегчая задачу пользователям. Правда, в состав операционной система он не входит, его придётся скачивать.
В обоих случаях создание батника происходит по одинаковому сценарию: в меню «Файл» выбираем «Создать», заполняем файл содержимым, по окончании редактирования кликаем «Сохранить как», даём имя пакетному файлу, а в поле «Тип файла» указываем «Batch file».

В классическом «Блокноте» расширение необходимо написать руками, выбрав в поле «Тип файла» опцию «Все файлы».
При написании пакетных скриптов необходимо учитывать следующие нюансы:
- перенос строк в таких файлах недопустим, он будет интерпретироваться неправильно;
- правильной кодировкой будет UTF-8;
- при использовании в командах кириллических символов, кодировку следует изменить с помощью специальной команды chcp 1251;
- расширение BAT идентично CMD. Файлы, оканчивающиеся таким расширением, будут обработаны командным интерпретатором точно так же.
Есть и другие интересные моменты.
Использование длинных имён в BAT-файлах
Многие пользователи при практическом рассмотрении вопроса, как создать батник, в том числе с расширением CMD, сталкиваются с проблемой длинных имён, которые доступны в ОС Windows. Интерпретатор командной строки в этом отношении остался закоренелым ретроградом – он понимает имена файлов и каталогов в формате DOS, то есть длиной не более 8 символов. Как же решается подобная дилемма?
Один из наиболее известных способов – сокращение имени до 6 символов (исключая пробелы) и присвоение остатку окончания, состоящего из символа «тильда» (~) и цифры 1. Например, стандартное имя каталога Program Files будет выглядеть как Progra~1, папка Sound Blaster получит имя SoundB~1.
Казалось бы, вполне изящное решение. Но не во всех случаях. Скажем, у вас имеется несколько папок, начинающихся с одного имени. Типичный пример – установка в том же Program Files нескольких программных продуктов от компании Mozilla – в этом случае сокращённым именем будет Mozill, и если всем присвоить остаток ~1, то это будет неправильно. Выход – именовать файлы, присваивая номер в порядке возрастания. Получим последовательность для продуктов Firefox, Thunderbird и Sunbird в виде строк Mozill~1 для браузера, Mozill~2 для Thunderbird и Mozill~3 для органайзера.
Проблема в том, что если один из продуктов удалить, например, Firefox, оставшиеся две записи окажутся неработоспособными. Удалив Thunderbird, вы сделаете недоступным Sunbird. Наконец, такой способ позволяет дать имена лишь девяти файлам/папкам с одинаковым начальным именем. Так что подобный способ удовлетворительным назвать никак нельзя.
Второе решение – заключать длинные имена и пути в кавычки.
Кавычки в пакетных файлах
Если вы думаете, что знаете всё про то, как сделать BAT-файл, то, скорее всего ошибаетесь. Допустим, вам нужно указать один из параметров команды в кавычках. Сами кавычки синтаксисом не запрещены, но всегда нужно учитывать правила написания конкретной команды. Пускай нам нужно запустить экзешник scw.exe. Соответствующая команда, по идее, должна иметь вид
Но это будет воспринято интерпретатором неправильно, поскольку в синтаксисе команды START на первом месте – необязательный параметр , и только затем следует путь. Поэтому, чтобы командный интерпретатор не запутался, первый параметр обязательно указываем, даже если он не нужен – просто оставляем его пустым.
Тогда наша команда преобразится:
Правильным также будет заключение в скобки всех наименований папок/файлов с пробелами внутри. Но встречаются ситуации, когда оба варианта не сработают. В таких случаях можно посоветовать посредством команды cd перейти в нужный каталог и работать уже в целевом. В нашем случае батник будет иметь вид:
Этот метод более трудоёмкий, но он гарантированно рабочий.
Как видим, создание, написание BAT-файлов даже для таких простых задач, как запуск программ в Windows, является по большому счёту искусством.
https://youtube.com/watch?v=q6hC4O-208A
Как автоматизировать запуск bat файлов
Очень часто необходимо автоматизировать запуск bat файлов для выполнения ими рутинных операций. Для запуска bat файлов по расписанию наиболее подходит Планировщик, входящий в стандартную поставку Windows. С это помощью можно очень гибко настроить запуск пакетного файла в определенные дни или часы, с определенным интервалом. Можно создать несколько расписаний и т.д.
Для локального запуска batch файлов можно пользоваться решениями от третьих фирм, благо платных и бесплатных альтернатив стандартному Планировщику великое множество.
Batch файлы так же могут использоваться как логин-скрипты в доменах. При таком их использовании они будут исполняться при каждом входе пользователя в сеть не смотря на его желание. С их помощью можно автоматизировать сбор информации о машинах или о программном обеспечении, установленном на компьютерах пользователей, принудительно менять настройки Windows, устанавливать незаметно для пользователя программное обеспечение и автоматизировать решение других задач, ручное исполнение которых заняло бы очень много времени.
Востребованные сетевые команды командной строки
Из командной строки Windows можно взаимодействовать с сетевыми подключениями, изменять их настройки, просматривать различную информацию и многое другое. Рассмотрим наиболее востребованные сетевые команды.
Команда ping
Наверное, это самая популярная команда среди пользователей ОС Windows (как, впрочем, и других операционных систем). Предназначена она для проверки доступности и качества связи между компьютером и целевым IP-адресом. Также команда может применяться для определения IP-адреса сайта по доменному имени сайта и для выполнения других задач.
Определим, есть ли связь с каким-нибудь IP-адресом. Пусть это будет — 173.194.73.139 (IP-адрес поисковой системы Google). Вводим следующую команду:
ping 173.194.73.139

Как видим, обмен пакетами с указанным IP-адресом осуществляется, значит, связь есть. Если бы ее не было, картина была бы следующая (уберем из IP Google последнюю цифру):

«100% потерь» означает, что связь установить не удалось.
А теперь определим IP-адрес сайта по его доменному имени. Возьмем адрес softsalad.ru:
ping softsalad.ru

На изображении выше можно увидеть IP-адрес сайта, определенный по его доменному имени.
Команда tracert
А эта команда применяется для отслеживания сетевого маршрута от компьютера до целевого IP-адреса (можно использовать и доменное имя сайта):
tracert softsalad.ru

Видите, чтобы «достучаться» до сайта компьютеру в данном случае потребовалось обратиться к 12 промежуточным IP-адресам (ваш провайдер, сервер сайта и т.д.).
Команда ipconfig
С помощью этой команды можно получить информацию о настройках IP-протокола компьютера (или, грубо говоря — настройки сетевых карт). Воспользуемся данной командой с атрибутом all, который позволит вывести более подробную информацию:
ipconfig /all

Команда getmac
Если требуется определить только MAC-адрес сетевой карты, используем эту команду без всяких атрибутов:
getmac

Примеры bat файлов
С помощью пакетных файлов можно делать огромное количество различных действий, которые очень сложно/долго, а в некоторых ситуациях, просто невозможно выполнить без использования bat файлов, т.к. необходимо либо приобретать специальный софт под конкретную задачу (пример — массовая конвертация картинок в папке(ах) по ключу в названии, либо самостоятельно писать такую программу на каком-либо языке программирования, что сможет далеко не каждый, да и целесообразность этого, для разового действия минимальна. На нашем сайте есть несколько примеров использования пакетных файлов для решения специализированных задач, которые, возможно, смогут вам помочь.
- Как автоматизировать запуск bat-файлов
- Как автоматически ответить на запрос о подтверждении с помощью bat-файла
- Как выполнить цикл определенное число раз в bat-файле
- Как добавить комментарии в bat-файл
- Как дождаться появления определенного файла в папке с помощью bat-файла
- Как завершить процесс (программу) с помощью bat-файла
- Как запретить повторный запуск приложения с помощью bat-файла
- Как зациклить выполнение команды с помощью bat-файла
- Как из одного bat-файла запустить другой
- Как изменить IP адрес компьютера с помощью bat-файла
- Как изменить дату с помощью bat-файла
- Как изменить значение параметра в реестре с помощью bat-файла
- Как изменить название процессора в Windows с помощью bat-файла
- Как импортировать значения переменных реестра с помощью bat-файла
- Как использовать символ процента в bat-файле
- Как настроить кодировку шрифтов (исправить иероглифы, кракозябры) в bat-файле
- Как отключить вывод на экран команд при выполнении bat-файла
- Как отправить сообщение по сети из bat-файла
- Как переименовать файлы по маске с помощью bat-файла
- Как перенаправить результат выполнения команд в лог-файл с помощью bat-файла
- Как присвоить переменной значение из реестра с помощью bat-файла
- Как проверить наличие прав администратора с помощью bat-файла
- Как сделать автоматическое создание резервной копии данных с помощью bat-файла
- Как сделать резервную копию файлов с сервера FTP с помощью bat-файла
- Как сделать экспорт реестра с помощью bat-файла
- Как сменить аудио устройство по умолчанию с помощью bat-файла
- Как создать бекап на сервере с подстановкой даты в имя архива с помощью bat-файла
- Как создать папку с помощью bat файла
- Как создать папку с именем равным текущей дате с помощью bat-файла
- Как создать паузу перед выполнением следующей команды с помощью bat-файла
- Как создать файл с произвольным именем с помощью bat-файла
- Как удалить файлы определенного типа с помощью bat-файла
- Как узнать имя компьютера с помощью bat-файла
- Как узнать разрядность версии Windows с помощью bat-файла
Параметры
- «заголовок«
- Указывает заголовок, выводимый в области заголовка окна.
- /dпуть
- Указывает каталог запуска.
- /i
- Передает начальные установки среды интерпретатора Cmd.exe в новое окно командной строки.
- /min
- Запускает новое окно командной строки в свернутом виде.
- /max
- Запускает новое окно командной строки в развернутом виде.
- Запускает 16-битные программы в отдельном пространстве памяти.
- /shared
- Запускает 16-битные программы в отдельном пространстве памяти.
- /low
- Запускает приложение с низким приоритетом.
- /normal
- Запускает приложение с нормальным приоритетом.
- /high
- Запускает приложение с высоким приоритетом.
- /realtime
- Запускает приложение с приоритетом реального времени.
- /abovenormal
- Запускает приложение с приоритетом выше среднего.
- /belownormal
- Запускает приложение с приоритетом ниже среднего.
- /wait
- Запускает приложение с ожиданием окончания его работы.
- /b
-
Запускает приложение без открытия нового окна командной строки. Обработка комбинации клавиш
CTRL+C не производится, пока приложение не разрешит обработку CTRL+C. Для прерывания
приложения следует использовать CTRL+BREAK. - имя_файла
- Задает команду или программу для запуска.
- параметры
- Задает параметры, которые будут переданы вызываемой программе.
Как создать batch файл?
Откройте блокнот и наберите две следующих строки:
@echo This batch file @pause
Выберите Файл — Сохранить как, выберите Тип файла — Все файлы, в поле Имя файла введите 1.bat и сохраните его в корне диска С, например. Теперь откройте диск С и запустите файл 1.bat. На экран будет выведено две строки.
This batch file Нажмите любую клавишу для продолжения...
После нажатия любой клавиши окно закроется, т.к. bat-файл выполнен.
Обратите внимание, что символ собаки перед каждой командой в bat-файле указывает на то, что саму команду выводить на экран не надо, а нужно вывести только результат ее работы. Чтобы поэкспериментировать удалите символ собаки из начала каждой строки, сохраните и запустите полученный bat файл.
Запуск программ в файле bat и другие базовые команды
В командном файле вы можете запускать любые программы и команды из этого списка: https://technet.microsoft.com/ru-ru/library/cc772390(v=ws.10).aspx (правда, некоторые из указанных могут отсутствовать в Windows 8 и Windows 10). Далее — лишь некоторые базовые сведения для начинающих пользователей.
Чаще всего бывают следующие задачи: запуск программы или нескольких программ из .bat файла, запуск какой-то функции (например, очистка буфера обмена, раздача Wi-Fi с ноутбука, выключение компьютера по таймеру).
Для запуска программы или программ используйте команду:
start "" путь_к_программе
Если путь содержит пробелы, возьмите весь путь в двойные кавычки, например:
start "" "C:Program Filesprogram.exe"
После пути к программе можно также указать параметры, с которыми она должна запускаться, например (аналогично, если параметры запуска содержат пробелы, возьмите их в кавычки):
start "" c:windowsnotepad.exe file.txt
Примечание: в двойных кавычках после start по спецификациям должно указываться имя командного файла, отображаемое в заголовке командной строки. Это необязательный параметр, но при отсутствии этих кавычек выполнение bat файлов, содержащих кавычки в путях и параметрах может пойти неожиданным образом.
Еще одна полезная возможность — запуск другого bat файла из текущего файла, сделать это можно с помощью команды call:
call путь_к_файлу_bat параметры
Переданные параметры при запуске можно прочитать внутри другого bat файла, например, мы вызываем файл с параметрами:
call file2.bat параметр1 параметр2 параметр3
В file2.bat можно прочесть эти параметры и использовать в качестве путей, параметров для запуска других программ таким образом:
echo %1 echo %2 echo %3 pause
Т.е. для каждого параметра мы используем его порядковый номер со знаком процента. Результатом в приведенном примере будет вывод в окно команд всех переданных параметров (команда echo используется для вывода текста в окно консоли).
По умолчанию, окно команд закрывается сразу после выполнения всех команд. Если нужно прочитать информацию внутри окна, используйте команду pause — она остановит выполнение команд (или закрытие окна) до нажатия любой клавиши в консоли со стороны пользователя.
Иногда, перед выполнением очередной команды нужно подождать некоторое время (например, до полного запуска первой программы). Для этого можно использовать команду:
timeout /t время_в_секундах
При желании, вы можете запустить программу в свернутом виде или развернутом видео с помощью параметров MIN и MAX перед указанием самой программы, например:
start "" /MIN c:windowsnotepad.exe
Для закрытия окна команд после выполнения всех команд (хотя, обычно оно и так закрывается при использовании start для запуска), используйте команду exit в последней строке. В случае, если консоль все равно не закрывается после запуска программы, попробуйте использовать такую команду:
cmd /c start /b "" путь_к_программе параметры
Примечание: в данном команде, если пути к программе или параметры содержат пробелы, могут быть проблемы с запуском, которые можно решить так:
cmd /c start "" /d "путь_к_папке_с_пробелами" /b имя_файла_программы "параметры_с_пробелами"
- https://spravkapc.ru/nastrojka-kompyutera/kak-sozdat-fail-bat.html
- https://viarum.ru/kak-sozdat-bat-fayl-v-windows/
- https://remontka.pro/create-bat-file-windows/
Поиск в локальной сети включенных компьютеров.
В данном примере речь идет о создании командного файла, позволяющего “собрать” список IP-адресов узлов локальной сети, включенных на данный момент времени. Ничего принципиально нового в плане создания командных файлов здесь нет, но тем не менее, задача поиска включенных узлов в локальной сети встречается довольно часто, и решить ее описанными выше способами, с использованием ping.exe и net view удается далеко не всегда, поскольку в современных версиях операционных систем семейства Windows настройки брандмауэров по умолчанию, задают довольно жесткие правила, блокирующие сетевые соединения извне, и ответы на эхо-запрос.
Прием, используемый для получения списка включенных сетевых устройств при решении данной задачи остается прежним – необходимо определить характерные отличия в выходных сообщениях стандартных сетевых утилит в случае, когда устройство выключено, и когда – защищено параноидальными настройками брандмауэра.
При любой передаче пакетов IP-протокола с данного компьютера на IP-адрес другого сетевого устройства в локальной сети, программные средства сетевых протоколов выполняют процедуру определения физического адреса сетевого адаптера получателя ( MAC-адрес получателя).
Всем сетевым устройствам отправляется специальный широковещательный запрос ( запрос который будет принят всеми компьютерами данной подсети), означающий “чей MAC – адрес соответствует такому-то IP-адресу”. Если какое-либо сетевое устройство опознало свой собственный IP-адрес, оно отправит ARP-ответ, содержащий соответствующий MAC-адрес, который будет сохранен в специальной таблице соответствия адресов IP и MAC, хранящейся в оперативной памяти компьютера, отправившего ARP-запрос.
Запись информации в данную таблицу выполняется только при необходимости передачи любых данных по протоколу IP, что можно инициировать, например, пингованием опрашиваемого устройства. Даже если настройками брандмауэра полностью закрыты все соединения извне и блокируется протокол ICMP ( устройство не «пингуется» ) , в буферной памяти сервиса ARP будет присутствовать запись соответствия IP и MAC, если устройство было подключено к локальной сети и участвовало в процедуре разрешения адреса .
Для просмотра содержимого ARP-кэш можно воспользоваться командой
arp -a – отобразить все записи в таблице ARP
Пример отображения таблицы ARP:
Интерфейс: 192.168.0.29 — 0xa
адрес в Интернете Физический адрес Тип
192.168.0.1 00-1e-13-d6-80-00 динамический
192.168.0.3 60-eb-69-08-18-d2 динамический
. . .
Интерфейс: 192.168.234.1 — 0xf
адрес в Интернете Физический адрес Тип
192.168.234.255 ff-ff-ff-ff-ff-ff статический
224.0.0.22 01-00-5e-00-00-16 статический
224.0.0.252 01-00-5e-00-00-fc статический
239.255.255.250 01-00-5e-7f-ff-fa статический
Как видно из приведенной таблицы, например IP – адресу 192.168.0.1 соответствует физический адрес сетевого адаптера, равный 00-1e-13-d6-80-00 . Если же сетевой адаптер с данным адресом будет недоступен, то такой записи в таблице не будет.
Для понимания алгоритма опроса сети необходимо учесть следующее:
Разрешение адресов ARP используется только при передаче данных по IP-протоколу в пределах сегмента локальной сети, задаваемого маской. Так, например, для примера с IP адресом 192.168.0.1 и маски 255.255.255.0 это будет диапазон IP от 192.168.0.1 до 192.168.0.254.
10 ответов
Лучший ответ
Вы используете для запуска программы от имени конкретного пользователя:
80
Kerrek SB
25 Июл 2011 в 02:54
Используйте полный физический диск \ путь к целевому пакетному файлу в ярлыке Свойства.
Это не работает в Windows 10, если вы используете дополнительные диски, как я пытался сделать сначала …
Samiamias
9 Дек 2018 в 09:51
Когда вы используете аргумент , он запрашивает пароль один раз, а затем никогда не запрашивает его снова. Даже если вы поместите его в другую программу, он не будет запрашивать пароль. Пример вашего вопроса:
5
Anonymous
23 Мар 2021 в 17:41
-
Мои эксперименты показывают, что команда runas должна включать домен администратора (по крайней мере, в настройках среды моей организации):
Если вы еще не знаете домен пользователя с правами администратора, запустите экземпляр командной строки от имени пользователя с правами администратора и введите следующую команду:
-
Ответы, предоставленные как Керрек С.Б. , так и Эд Гривз , будут выполнять целевой файл от имени администратора, но, если файл является командным сценарием (файл .bat) или сценарием VB (файл .vbs), который пытается работать в среде обычного пользователя, входящего в систему (например, изменяя записи реестра), вы можете не получить желаемых результатов, потому что среда, в которой фактически запускается сценарий, будет принадлежать пользователю с правами администратора, а не пользователь с нормальным входом! Например, если файл представляет собой сценарий, который работает с кустом реестра HKEY_CURRENT_USER, затронутым «текущим пользователем» будет пользователь с правами администратора, а не пользователь с обычным входом.
5
pstraton
3 Дек 2019 в 20:06
Конвертируйте ваш командный файл в .exe с помощью этого инструмента: http://www.battoexeconverter.com/, тогда вы можете запустить его как администратор
5
xxedxx
5 Апр 2013 в 14:56
Затем
6
mattn
30 Июн 2017 в 09:26
Вы можете использовать nircmd.exe команда поднять
Справочник по командам NirCmd — поднять
Только для Windows Vista / 7/2008: запускать программу с правами администратора. Если содержит один или несколько пробелов, вы должны заключить их в кавычки.
Примеры:
PS: я использую его на win 10, и он работает
8
Dheeraj Bhaskar
16 Май 2017 в 12:25
Если вы можете использовать стороннюю утилиту, вот утилита командной строки .
Исходный код и двоичные файлы доступны на GitHub.
Это описание использования:
12
aphoria
24 Мар 2021 в 13:22
Просто добавьте это в начало вашего файла летучей мыши:
Он повысится до уровня администратора, а также останется в правильном каталоге. Проверено на Windows 10.
54
Sire
26 Сен 2018 в 12:24
Другой ответ требует, чтобы вы вводили пароль учетной записи администратора. Кроме того, запуск под учетной записью в группе администраторов отличается от запуска от имени администратора , см .:
Инструкции для Windows 7
Чтобы работать от имени администратора, создайте ярлык для командного файла.
- Щелкните правой кнопкой мыши командный файл и нажмите «Копировать».
- Перейдите туда, где вы хотите, чтобы ярлык
- Щелкните правой кнопкой мыши фон каталога
- Выберите «Вставить ярлык»
Затем вы можете установить ярлык для запуска от имени администратора:
- Щелкните правой кнопкой мыши ярлык
- Выберите Свойства
- На вкладке «Ярлык» нажмите «Дополнительно».
- Установите флажок «Запуск от имени администратора».
- Нажмите ОК, ОК
Теперь, когда вы дважды щелкните ярлык, он запросит подтверждение UAC, а затем Запуск от имени администратора (который, как я сказал выше, отличается от запуска под учетной записью в группе администраторов)
Проверьте снимок экрана ниже

Примечание. Когда вы сделаете это для запуска от имени администратора, текущий каталог (путь) не будет таким же, как у файла bat. Это может вызвать некоторые проблемы во многих случаях, когда файл bat ссылается на относительные файлы рядом с ним. Например, в моей Windows 7 текущим каталогом будет SYSTEM32 вместо местоположения файла bat! Чтобы обойти это, вы должны использовать
Или лучше
Чтобы убедиться, что каталог cur находится по тому же пути, что и файл bat.
387
Danny Beckett
11 Ноя 2018 в 02:34
Как создать bat файл для запуска программы?
Чтобы создать батник, необходимо запустить редактор текста, затем сохранить файл с конечным именем bat. При отсутствии в вашем редакторе нет функции сохранения с таким расширением, то его необходимо прописать самостоятельно. При запуске такого файла у нас откроется консоль и если никаких команд не будет, то она тут же закроется.

Теперь давайте зададим команду для запуска программы. Для этого необходимо открыть наш созданный батник в блокноте или другом редакторе и прописать команду.

На примере запустим браузер. Необходимо сначала вписать команду Start и после пробела написать Opera.
Выглядеть это должно так:
Start Opera

Такая сработает для программ известных системе, но если произвести запуск софта, который не известен системе, потребуется прописать весь путь к программе. Например если у вас ftp установлен в папку Program Files то для того чтобы его запустить нужно ввести команду
start filezilla
А если ftp клиент установлен в другую папку нужно будет прописать весь путь.

Эта технология поможет при выполнении разного рода задач, причем в автоматическом режиме. Некоторые пользователи даже пишут таким образом вирусы. Чтобы невозможно было изменить конфигурацию файла с помощью редактора текста, необходимо конвертировать файл bat в exe. Это поможет сделать различный вспомогательный софт, который вы можете найти в сети. Например, для преобразования bat в exe поможет программа Bat to exe converter.
Функция бат очень полезна и порой необходима. С помощью нее можно писать целые программы узкого спектра действия. Область применения зависит только от знаний команд и умения их совмещать. Поэтому пользуйтесь и расширяйте свои навыки и умение пользоваться компьютером на уровне Супер пользователя.
Автоматический ответ на запросы о подтверждении
При работе некоторых команд может возникнуть ситуация, когда они должны совершить потенциально опасное действие в системе. В качестве примера рекомендуется назвать format или del. Подобный момент предусмотрен и выдается соответствующее предупреждение. Когда производится выполнение внутри пакетного файла, то его деятельность остановится. Она будет возобновлена только после подтверждения и это способно стать причиной потери драгоценного времени.
Существует способ осуществления задачи автоматизации. Предполагается использование перенаправления необходимого ответа в команду. Далее будет на примере рассмотрено подобное действие. Требуется создать на диске С обычную папку Folder и внутрь неё осуществим помещение любых 2х документов.
Запускаем интерпретатор команд и вводим в нем
del C:\Folder
Это предполагает необходимость осуществить удаление вместе со всеми файлами внутри. Поскольку подобное действие относится к числу потенциально опасных, поступит запрос на подтверждение следующего вида:
C:\Folder\*, продолжить [Y(да)/N(нет)]?
Команда не станет продолжаться до тех пор, пока пользователь не ответит. Если работа производится в автономном режиме, ожидание может быть крайне длительным, а сам процесс останется невыполненным. Для выхода из сложившейся ситуации рекомендуется применение специального символа (|). Он предусматривает, что должна произойти передача следующей сразу после команде. Теперь модифицируем строку в пакетном файле:
echo Y|del C:\Folder
На экран происходит выдача подтверждения с уже положительным решением. Таким образом, из указанной папки произойдет удаление всех документов. Следует аккуратно использовать подобную возможность.
Запуск программ и основные команды
Следующее видео о работе с командами для «батников»:
На официальном сайте Microsoft доступна библиотека, где находится список возможных для запуска команд и приложений
Стоит обратить внимание, что часть из них может не поддерживаться в системах Windows 8 или 10
Следующие команды являются основными для тех, кто решил более углубленно изучить возможности файлов .bat:
- В основном, пользователям нужно немного – настроить запуск определенной программы (или нескольких), запустить одну из функций, настроить раздачу Wi-Fi через ноутбук или отключить компьютер через заданное время. Чтобы запустить программу или сразу несколько, нужно ввести следующее: start “расположение_программы”.

- Если в названиях папок есть пробелы, нужно пометить расположение двойными кавычками: start ” “C:\My files\My file.exe”.
- После прописанного пути, можно добавить свои опции, чтобы программа запускалась вместе с ними. Это также берется в кавычки, таким образом: start “c:\windows\notepad.exe file.txt”
- Следующая интересная функция позволяет загружать «батник» из текущего файла. Для этого нужно воспользоваться оператором call, что выглядит так: call расположение_файла опции
- Полученные параметры во время запуска возможно прочесть из подключаемого файла. К примеру, для вызова файла с опциями потребуется указать: call file.bat опция1 опция2 опция3. Из file.bat можно считать эти операторы и пользоваться ими как путями, чтобы запускать другие приложения подобным образом: echo %1 или Каждой опции присваивается свой номер, к которому добавляется знак процента. В показанном примере результатом является вывод команд отправленных опций в консоль (echo применяется, если нужно вывести текст в консоль).
- В некоторых случаях, перед запуском следующей команды следует выждать время (к примеру, когда первая программа будет полностью запущена). Это делается с помощью команды: timeout /t указать_количество_секунд
- Если есть необходимость запускать программу свернутой или развернутой, можно добавить перед путем к программе параметр MIN или MAX: start /MIN c:\windows\notepad.exe.
- Чтобы закрыть окно с командами, когда они будут запущены (впрочем, в большинстве случаев оно будет закрыто, если используется start), в последней строчке нужно добавить exit. Если же консоль так и остается открытой, можно попытаться сделать следующее: cmd /c start /b “” расположение_программы опции.
Стоит учитывать, что окно будет закрыто сразу же, как только выполнятся указанные команды. При необходимости, чтобы увидеть информацию из окна, нужно применить pause. С ней можно остановить закрытие окна до нажатия пользователем любой кнопки из консоли.
Dr.Batcher – программа для создания bat-файлов и их редактирования
Пускай ныне использование bat-файлов и не так востребовано пользователем, все же для решения многих задач на компьютере эффективнее прибегать к их помощи. Если новичку, изредка использующему командный интерпретатор, хватит функционала блокнота, то для системного администратора и варезника, занимающегося созданием сборок Windows или автоматически устанавливаемого программного обеспечения для нее, необходим более совершенный и удобный инструмент для работы с документами формата bat. Им является утилита Dr.Batcher. Интерфейс и функционал программы мало чем отличается от блокнотов, таких как Notepad++. В главном меню расположены кнопки часто используемых команд. Dr.Batcher нумерует страницы, поддерживает закладки, содержит список системных команд для bat-файлов и подсвечивает синтаксис введенных команд.
Создание bat-файла в Dr.Batcher
- Запускаем приложение.
- Вызываем пункт «File» его главного меню и жмем «New». То же выполняется нажатием на иконку чистого листа, расположенную под меню «File».
- В диалоговом окошке выбираем «Empty Batch File».

На экране появится окно программы со всеми необходимыми для работы с bat-файлами функциями.
Редактирование через контекстное меню bat-файла
- Вызываем контекстное меню документа формата bat.
- В выпавшем списке выбираем «Edit with Dr.Batcher».

Затем запустится окно программы с содержимым нашего текстового командного файла, где можно вносить коррективы в его содержимое.
Как отключить вывод на экран команд при выполнении пакетного файла
При выполнении пакетного файла на экран, помимо результатов работы команды, выводятся и сами команды. Чтобы отключить вывод команд, можно использовать символ @.
Чтобы не выводить на экран одну команду, можно поставить знак @ в начале этой команды.
echo Testing
Эта команда выведет на экран команду echo Testing, а на следующую строку — результат ее работы, слово Testing.
@echo Testing
Эта команда выведет на экран только результат работы команды, т.е. слово Testing. Сама команда выведена не будет.
Если на протяжении выполнения всего файла выводить команды на экран не нужно, то проще первой строкой в пакетном файле написать следующую команду:
@echo off
Эта команда отключит вывод команд на экран на протяжении выполнения всего пакетного файла. Чтобы сама команда не выводилась, она начинается с символа @.