K210.ORG
Пожалуй каждый админ сталкивался с проблемами, связанными с различающимися версиями ПО на компах пользователей. У одного стоит WinXP SP1, у другого SP3, второй пользуется Firefox 2 с неработающими обновлениями, третьему в спешке забыли установить антивирус, или неправильно его настроили, у четвертого Word 2007 сохраняет файлы в формате docx, который не понимает openoffice пятого, ну и многое другое. Я тоже значительно пострадал от всего этого и однажды решил привести список ПО и его настройки у пользователей к одному единому знаменателю. Было много проблем и бессонных ночей, но после всего этого, количество проблем и звонков резко сократилось, да и установка новых систем свелась в основном только к вводу пустого компьютера в домен, после чего весь основной софт сам настраивается и устанавливается. А начну я свой рассказ с установки софта из доменного скрипта автозапуска (BAT файла).
Собственно сама установка программ производится у меня из этого скрипта. Т.е. при каждом логине пользователя, проверяется список программ и устанавливаются нужные, если их нет. Да, это наводит некоторые проблемы – одни программы требуют перезагрузки, другие долго устанавливаются и т.п. Но надо только один раз отмучиться и потом все будет хорошо
Первая проблема, с которой я столкнулся – необходимость запуска установки от имени администратора. Стандартный системный runas требует ввода пароля администратора при каждом запуске и для наших целей непригоден. В ходе поисков в интернете, была найдена программа http://www.robotronic.de/runasspc.html. С ее помощью мы генерируем зашифрованный файл, который запускается модулем этой программы, который в свою очередь, запускает нужный нам bat файл от имени доменного админа. Команда на запуск будет представлять из себя примерно такую строку:
Где runasspc.spc – сгенерированный нами файл для запуска файла сценариев \\server\share\autorun\soft_install.bat от имени доменного администратора. Для этой цели я даже сделал отдельного пользователя с паролем по-сложнее и бесконечным сроком действия.
Далее мне потребовался какой-либо оповещатель об установке софта. Для этого я использовал программу Blat, которая позволяет отправлять письма прямо из командной строки. Я выложил ее в доступную всем папку на сервере \\server\share\autorun\blat
Далее собственно файл \\server\share\autorun\soft_install.bat:
@ECHO OFF
REM Адрес почтового сервера и адреса получателя и отправителя писем
SET MAILS=»10.1.1.1″
SET MAILFROM=»support@company.ru»
SET MAILTO=»support@company.ru»
SET BLAT=»\\server\share\autorun\blat\blat.exe»
REM Имена компьютеров, на которые не требуется устанавливать софт
if %COMPUTERNAME%==NOTEBOOK (
exit
)
if %COMPUTERNAME%==WINSERVER (
exit
)
rem ———————Service Pack 3 Install————————-
REM проверяем установлен ли SP3 в реестре
Reg query «HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion» /v CSDversion|Find «Service Pack 3»
if %ERRORLEVEL% == 0 (
ECHO Service Pack 3 Already Installed
goto end
)
ECHO Installing Service Pack 3
«%BLAT%» -server %MAILS% -f %MAILFROM% -to %MAILTO% -s «Soft install on %COMPUTERNAME%. WinXP SP3 install real» -body «%DATE% %TIME% WinXP SP3 Install»
REM Путь к дистрибутиву и команда тихой установки + ключи, не требующие подтверждения установки и отменяющие перезагрузку
«\\server\share\distrib\WindowsXP-KB936929-SP3-x86-RUS.exe» /quiet /passive /norestart
SET PROGRAMMNAME=»NOD32″
REM Путь и имя к проверяемого файла
SET FILENAME=»C:\Program Files\ESET\ESET NOD32 Antivirus\ekrn.exe»
REM Требуемый размер файла
SET FILESIZENEED=»810120″
REM Сравниваем размер файла и если не совпадает с требуемым, или файл не существует — запускаем установку
echo Checking %PROGRAMMNAME%
if exist «%FILENAME%» (
for %%a in (%FILENAME%) do set «FILESIZE=%%
za»
if «%FILESIZE%» == %FILESIZENEED% (
echo Program already install %FILENAME% with size %FILESIZE% bytes
goto end
) else (
echo Need install. File %FILENAME% need to be %FILESIZENEED% bytes, but it %FILESIZE% bytes.
)
) else (
echo Need install. File %FILENAME% not exist.
)
echo Installing programm
REM Отправка письма с оповещением об установке
«%BLAT%» -server %MAILS% -f %MAILFROM% -to %MAILTO% -s «Soft install on %COMPUTERNAME%. NOD32 4» -body «%DATE% %TIME% Begin installing NOD32.»
REM Специально созданный reg-файл с нужными настройками NOD32
regedit /s \\server\share\nod32.reg
REM Путь к дистрибутиву и команда для тихой установки (Silent Install)
«\\server\share\distrib\eavbe_nt32_rus_4.msi» /qb! REBOOT=»ReallySuppress»
Логика примерно такова:
-проверяем, не установлена ли уже программа (по существованию файла, размеру, ключам реестра и т.п.)
-если нет – запускаем тихую установку (Silent Install)
Практически все известные программы делаются сейчас с режимом тихой установки. Это позволяет устанавливать ее, не выдавая каких-либо окон и не требуя от пользователя действий.
С этой помощью, все компьютеры пользователей у меня теперь работают с набором программ с одинаковыми версиями. Однако приходится бороться с автоматическими обновлениями самих программ – выключать их через реестр, или другими способами. Вот список софта, который устанавливается у меня таким способом:
Service Pack 3
NOD32
Acrobat Reader
7Zip
Internet Explorer
Mozilla Firefox
OpenOffice
FreeImage Editor
Denol Scanner
Punto Switcher
OCS Inventory Agent
Small CD Writer
NTPD
UltraVNC
Miranda IM
Adobe Flash Player
doPDF
и несколько других мелких утилит.
Теперь я точно знаю, что ЛЮБОЙ пользователь может, к примеру, найти на рабочем столе ярлык для программы для записи дисков, что сайт с флеш-содержимым у него откроется корректно и в списке принтеров он найдет виртуальный PDF-принтер
Источник
Как создать BAT файл в Windows 10
В статьях по настройке операционной системы Windows 10 часто можно встретить рекомендацию создать BAT файл, записать в него определенные команды и выполнить. Но, при этом, далеко не всегда объясняется, что это такое, как оно создается и запускается.
В данной инструкции мы постараемся закрыть данный вопрос. Здесь вы узнаете, что такое BAT файл, как создать BAT файл в Windows 10, а также как его редактировать и выполнять.
Что такое BAT-файл в Windows 10
BAT файл (или пакетный файл) – это текстовый документ с расширением « .BAT », в котором хранится список команд для выполнения командным интерпретатором операционной системы. Запуск такого файла позволяет выполнить все сохраненные в нем команды одна за одной. Пакетные файлы используются для запуска программ и автоматизации рутинных или часто повторяющихся задач. Например, с помощью BAT можно организовать регулярную очистку временных папок, создание резервных копий, редактирование реестра Windows 10, а также решение других задач по системному администрированию.
Поддержка BAT файлов в операционных системах Microsoft появилась еще в MS-DOS, в которой команды выполнялись командным интерпретатором « COMMAND.COM ». Данный интерпретатор также присутствовал и в операционных системах семейства Windows 9x, но с приходом Windows NT был заменен на « cmd.exe ».
Интерпретатор « cmd.exe » сохранил совместимость с « COMMAND.COM », а также получил ряд новых функций. В частности, он получил поддержку расширения « .CMD ». В результате в современных версиях Windows для пакетных файлов можно использовать как старое расширение « .BAT », так и новое « .CMD ».
Создание BAT файла через Блокнот
Самый простой вариант создания BAT файлов в Windows 10 это создание через « Блокнот » или другой простой текстовый редактор . Например, можно использовать Notepad++ или Akelpad.
Чтобы запустить « Блокнот » можно воспользоваться поиском в меню « Пуск » или нажать комбинацию клавиш Win-R и выполнить команду « notepad ».

После открытия программы « Блокнот » в нее нужно вставить команды для выполнения. Для примера введем команду, которая выполнит 100 запросов ping к домену Google.

После ввода команд, документ нужно сохранить с расширением BAT. Для этого открываем меню « Файл – Сохранить как » или используем комбинацию клавиш Ctrl-Shift-S.

Дальше откроется стандартное окно для сохранения документов. Здесь нужно указать папку для сохранения, выбрать « Тип файла – Все файлы (*.*) » и ввести имя с расширением BAT (.bat). Например, можно ввести « Ping.bat ».
Обратите внимание, если вы запустили « Блокнот » без прав администратора, то сохранить документ на системный диск ( C:) не получится. В этом случае его можно сохранить в папку пользователя или на другой диск и потом переместить.

После сохранения в выбранной вами папке появится готовый к использованию BAT файл.
Создание BAT файла переименованием TXT
Также в Windows 10 можно создавать BAT файлы с помощью переименования обычных текстовых файлов (с расширением *.txt). Другими словами, вы можете сначала создать обычный текстовый документ с расширением TXT, сохранить в него все нужные команды, и уже потом превратить его в исполняемый пакетный файл изменив расширение с TXT на BAT.
Чтобы воспользоваться этим способом необходимо включить отображение расширений. Для этого нужно открыть окно « Параметры папок ». Сделать это можно разными способами. Например, можно открыть папку, перейти на вкладку « Вид » и нажать на кнопку « Параметры ».

Также вы можете воспользоваться поиском в меню « Пуск ». Для этого в поиск нужно ввести фразу « Параметры проводника »

Либо можно воспользоваться меню « Выполнить ». Для этого нужно нажать комбинацию клавиш Windows-R и ввести команду « control.exe folders ».

Какой бы вы способ не выбрали, перед вами откроется окно « Параметры папок ». Здесь нужно перейти на вкладку « Вид » и отключить функцию « Скрывать расширения для зарегистрированных типов ».

После этого, при переименовании вы сможете изменять расширение.

Изменив расширение с TXT на BAT вы получите исполняемый пакетный файл.
Редактирование созданных BAT-файлов
Для того чтобы отредактировать уже созданный BAT-файл его нужно открыть в любом простом текстовом редаторе (например, в Блокноте, Notepad++ или Akelpad). Чтобы отредактировать BAT с помощью Блокнота достаточно кликнуть по нему правой кнопкой мыши и выбрать пункт « Изменить ».

После этого выбранный файл откроется в программе Блокнот и вы сможете отредактировать его содержимое.
Создание BAT файлов для запуска программ
В BAT файле вы можете использовать любые команды, которые могут быть выполнены при помощи « Командной строки » Windows 10. Но, BAT-файлы также могут использоваться для запуска программ и приложений.
Для запуска программ ч помощью BAT файла нужно использовать команду « start ». Ниже показано, как выглядит формат записи данной команды.
Например, для того чтобы запусть браузер Google Chrome нужно выполнить:
При необходимости можно укзать полный путь к программе, которую нужно запустить:
Для запуска других пакетных файлов нужно использовть команду « call ». Ниже показано, как выглядит формат записи данной команды.
Например, для того чтобы запустить пакетный файл « test.bat », который находится на рабочем столе, нужно выполнить:
Другие команды для BAT файлов
Вывод текста . Для вывода текстовых сообщений на экран необходимо сначала включить режим отображения вводимых команд (команда « echo ON »), а потом вывести сообщение (команда « echo »). Например, для того чтобы вывести сообщение « Hello CMD » нужно выполнить следующие команды:
Также в BAT файлах часто используется команда « @echo off ». Данная команда наоборот, отключает вывод выполняемых команд на экран, а знак « @ » предотвращает вывод самой команды « echo ».
Остановка выполнения . При выполнении пакетного файла может понадобится временная остановка, например, для того чтобы просмотреть результаты. Для такой остановки используют команду «@pause».
Работа с переменными . Для работы с переменными в BAT используют команду « set ». С помощью данной команды можно создать новую переменную или переопределить уже существующую. Например, для того чтобы создать переменную « Name » и присвоить ей значение « Ivan » нужно выполнить следующую команду:
Операции с файлами и папками . Кроме этого в BAT часто используют команды для работы с файлами. Ниже мы рассмотрим несколько самых популярных из них.
Источник
Как создать bat-файл в Windows 7/10 – редактируем и сохраняем батник
Использование графического интерфейса в операционных системах сегодня представляется чем-то само собой разумеющимся и совершенно естественным, но так было не всегда. Первая операционная система MS DOS, разработанная компанией Microsoft, не имела GUI, а управление выполнялось посредством ввода текстовых команд. С тех пор минуло без малого 40 лет, однако скриптовый язык командной строки по-прежнему пользуется популярностью, причём не только в среде разработчиков.
Командная строка не столь удобна, зато с её помощью можно выполнять недоступны из GUI операции. С другой стороны, запускать каждый раз консоль, вводить в неё одну за другой команды – всё это сильно замедляет работу. Впрочем, можно существенно упростить задачу, создав бат-файл или попросту батник – текстовый файл с расширением BAT, содержащий список инструкций, обрабатываемых командным интерпретатором CMD. Используются такие файлы для автоматизации разных задач, например, для удаления временных файлов по расписанию или запуска программ.
Как создать файл с расширением BAT
Итак, как создать bat-файл в Windows 7/10? Очень просто. Для этого понадобится любой текстовый редактор и знание основ командной строки. Можно использовать Блокнот, а ещё лучше Notepad++, так как последний имеет подсветку синтаксиса. Создайте в редакторе новый файл, в меню «Файл» выберите «Сохранить как», дайте будущему скрипту имя, а в выпадающем списке «Тип файла» выберите «Batch file (*bat; *cmd; *nt)».


Если для создания bat-файла захотите использовать Блокнот, расширение нужно присвоить вручную, а в списке «Тип файла» выбрать «Все файлы».

Как видите, создать файл с расширением bat не составляет сложности, есть тут, однако, свои тонкости. В командных файлах нельзя использовать перенос строк, кодировка bat-файла должна быть выставлена UTF-8, если в теле скрипта используется кириллица, кодировку нужно изменить, вставив в положенном месте команду chcp 1251.
Вместо расширения BAT можно использовать CMD, результат выполнения скрипта будет точно таким же.
Основные команды, синтаксис и примеры использования батников
Как сделать bat-файл вы знаете, теперь настала пора самого интересного, а именно синтаксиса языка интерпретатора CMD. Понятно, пустой батник работать не будет, он даже не запустится при двойном по нему клике. Чтобы скрипт сработал, в нём должна быть прописана хотя бы одна команда. Для наглядного примера посмотрим, как написать bat-файл для запуска программ. Допустим, приступая к работе, вы каждый раз запускаете три программы – Chrome, Firefox и VLC. Упростим задачу, создав скрипт, который будет сам запускать эти программы с интервалом в пять секунд.
Открываем пустой батник и вставляем в него такие команды:

Команда start запускает исполняемый файл нужной программы, а команда timeout /t задаёт интервал между запусками. Обратите внимание на расположение кавычек – в них берутся пути, в которых имеются пробелы. Также если в пути есть кириллические символы, в начало скрипта следует вставить изменяющую кодировку команду chcp 1251, в противном случае интерпретатор не сможет правильно прочитать путь.

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

Может также статься, что в определённый момент потребуется приостановить выполнение скрипта, чтобы пользователь сам смог решить, выполнять ли все остальные команды или нет. Для этого существует команда pause. Попробуйте заменить ею timeout и увидите, что получится.

Рассмотрим ещё один пример команд для bat файла. Напишем скрипт, который будет в одном случае выключать компьютер, а в другом – перезагружать его. Для этих целей мы будем использовать команду shutdown с параметрами /s, /r и /t. При желании можно добавить в батник запрос на выполнение действия, вот так:


Поясняем. Первая команда скрывает текст самих команд, вторая – устанавливает кириллическую кодировку, третья – выводит сообщение для пользователя, четвертая – устанавливает паузу, пятая – выключает, а с ключом /r вместо /s перезагружает компьютер без традиционной задержки в одну минуту. Если не желаете церемониться с запросами и паузами, можете оставить только пятую команду.
Если вместо русского текста при выполнении команды вы увидите крякозябры, попробуйте преобразовать файл скрипта в ANSI.
Что ещё можно делать с помощью скриптов? Много чего, например, удалять, копировать или перемещать файлы. Допустим, у вас есть некая папка data в корне диска D, содержимое которой нужно очистить одним махом. Открываем батник и вставляем в него такую команду:


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

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

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

Кроме того, можно сделать так, что конкретный батник будет запускаться с повышенными привилегиями всегда. Для этого необходимо создать на такой скрипт обычный ярлык, открыть его свойства, нажать кнопку «Дополнительно» и отметить в открывшемся окошке галочкой пункт «Запуск от имени администратора». Этот способ хорош ещё тем, что позволяет выбрать для ярлыка любой значок, тогда как файл с расширением BAT или CMD всегда будет иметь невзрачный вид.

Скрипты, как и все приложения, можно запускать по расписанию. Команда timeout /t здесь не совсем уместна, для отложенного запуска лучше всего использовать встроенный «Планировщик задач» Windows. Здесь всё просто. Открываем командой taskschd.msc Планировщик, определяемся с триггером, действие выбираем «Запустить программу» и указываем путь к bat-файлу. Вот и всё, скрипт будет запущен в положенное время.





И напоследок ещё один интересный момент. Когда вы запускаете bat-файл, на экране появляется, пусть даже на какую-то долю секунды, окно командной строки. А нельзя ли сделать так, чтобы скрипт выполнялся в скрытом режиме? Можно, причём несколькими способами. Самый простой заключается в следующем. Создаём на bat-файл ярлык, открываем его свойства и в меню «Окно» выбираем «Свёрнутое в значок». После этого единственным видимым признаком запуска скрипта будет появление значка CMD на панели задач, окон же при этом открываться не будет.

Если вы желаете полностью скрыть выполнение скрипта, можете воспользоваться «костылем» – скриптом VВS, который будет запускать ваш батник в скрытом режиме. Текст скрипта приведен ниже, сохраните его в файл hidden.vbs, предварительно заменив путь во второй строчке кода D:/sсript.bat путём к вашему батнику.

Есть также и другие варианты, например, использование утилиты Hidden Start, позволяющей запускать исполняемые и пакетные файлы в скрытом режиме, в том числе без приглашения UAC.
А на этом пока всё. Информацию касательно создания скриптов BAT без труда можно найти в интернете. Неплохо также ознакомиться с учебником Уильяма Станека «Командная строка Microsoft Windows». Несмотря на то, что с момента издания книги прошло более десяти лет, содержащаяся в ней информация до сих пор актуальна.
Источник
Учение основ cmd(bat) (ДЛЯ НОВИЧКОВ)
Хэллоу пикабушник. Я хочу, чтобы ты понял весь программный язык cmd(bat) на понятном языке. Ну, давай приступим?
Для начала Разберем, что такое cmd(bat) и с чем его едят?
С этим мы разобрались, теперь, зачем он нужен? Дело в том, что некоторые вещи можно быстрее выполнить в командной строке, а некоторые настройки в принципе отсутствуют в графическом интерфейсе пользователя. Так же следует иметь в виду, что до сих пор существуют утилиты, не имеющие графического интерфейса, а иногда он оказывается недоступен, например из-за сбоя.
Как открыть командную сроку(cmd.exe)
И так, давайте создадим на рабочем столе текстовый документ, а далее впишем в него
Для вывода сообщения в BAT файлах используется команда echo: Вывод сообщений и переключение режима отображения команд на экране. ECHO [ON. OFF] ECHO [сообщение] Ввод ECHO без параметров позволяет выяснить текущий режим отображения команд.
В данном случае напишем @Echo off
После напишем такую строку A: Что это такое? Это так сказать, строка, позволяющая делать оборот(обратно выполнять функции,команды после этой строки)
Далее после A: напишем, echo HELLO MY FRIEND (тут вышла ошибочка, пишем :A, а не A: )
echo — команда, позволяющая показывать сообщения, в моем случае это «HELLO MY FRIEND«
После давайте напишем команду, которая будет открывать окно, в данном случае это команда «Start»
Команда START — запуск приложения в новом окне
Команда START позволяет запускать приложения в отдельном окне, с возможностью указания некоторых параметров их выполнения.
Формат командной строки:
START [«заголовок»] [/D путь] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED] [/LOW | /NORMAL | /HIGH | REALTIME| /ABOVENORMAL | /BELOWNORMAL] [/WAIT] [/B] [команда/программа] [параметры]
Параметры командной строки:
«заголовок» — заголовок окна. Обязательно в двойных кавычках.
путь — рабочий каталог.
B — запуск приложения без создания нового окна с отключением обработки сочетания клавиш CTRL+C. Если приложение не обрабатывает сочетание клавиш CTRL+C самостоятельно, единственным способом его прерывания является использование сочетания клавиш CTRL+Break.
I — Новой средой станет исходная среда, переданная cmd.exe, а не текущая среда.
MIN — Запуск команды/программы в свернутом окне.
MAX — Запуск команды/программы в развернутом окне.
SEPARATE — Запуск 16-разрядной программы Windows в отдельной области памяти.
SHARED — Запуск 16-разрядной программы Windows в общей области памяти.
LOW — Запуск приложения с приоритетом IDLE (самый низкий приоритет).
NORMAL — Запуск приложения с приоритетом NORMAL.
HIGH — Запуск приложения с приоритетом HIGH.
REALTIME — Запуск приложения с приоритетом REALTIME (самый высокий приоритет).
WAIT — Запуск приложения с ожиданием его завершения.
ABOVENORMAL — Запуск приложения с классом приоритета ABOVENORMAL (выше стандартного)
BELOWNORMAL — Запуск приложения с классом приоритета BELOWNORMAL (ниже стандартного)
команда/программа — Если это внутренняя команда cmd.exe или пакетный файл, обработчик команд (cmd.exe) запускается с ключом /K. Это означает, что окно не будет закрыто после завершения команды. Если это не внутренняя команда cmd.exe и не пакетный файл, значит, это программа, которая будет запущена в графическом или текстовом окне.
Но давайте напишем start http://google.com — при данное команде, будет открываться гугл.
После напишем echo I KILLED YOUR WINDOWS (Мини шуточка пхпх) — команда которая будет выводить текст. И на последок пишем goto A (для работы круга)
Вот как все это должно выглядеть
Нажимаем «Файл» «Сохранить как» Рабочий стол
Тип файла выбираем «Все файлы» и к названии вашего файла(в моем случае пикабу) приписываем .bat
Источник
Создание BAT файлов
Люди, которым знаком термин батник , знают, что BAT файлы могут существенно упростить жизнь и экономить время, если уметь их правильно писать и использовать. В этой статье я расскажу о том, как создавать BAT файлы и познакомлю вас с распространенными ошибками, которые обычно возникают при их написании.
Создать BAT файл очень просто. Достаточно открыть блокнот и сохранить пустой лист с расширением .bat , выбрав опцию Сохранить как. и написав в поле Имя файла что-нибудь оканчивающееся на .bat , например test.bat .
Тип файла указываете как на скриншоте ниже — Все файлы . Сохраняете и получаете BAT файл.

Редактировать BAT файл можно в блокноте или любом другом текстовом редакторе, ориентированным на работу с кодом.
Теперь перейдем непосредственно к практической информации. В сети многие ищут ответ на вопрос Как быть с пробелами в BAT файлах? . В путях к папкам и исполняемым файлам наличие пробела вызывает ошибку. Самый распространенный ответ: Заключи путь в кавычки . И этот ответ не верен. Правда некоторые будут с пеной у рта утверждать, что он работает. Итак, появилось два почему — почему не верен и почему некоторые будут .
На Windows (как, впрочем, и на UNIX) установленные в системе программы соответствующим образом регистрируются системой. Поэтому некоторые из установленных программ могут запускаться одной простой командой из BAT файла или из апплета Выполнить панели Пуск . Одной из таких программ является Firefox:
Если после этой команды писать путь к исполняемому файлу, то происходит следующее: запускается обозреватель Firefox и пробует обработать запрос, то есть файл, путь к которому указан. То есть, если указать следующее:
Обозреватель откроется, чтобы не было написано после start firefox . Именно поэтому некоторые товарищи будут уверять что все прекрасно работает. Однако, если взять портативную программу, то ситуация окажется совсем иная. Рассмотрим в качестве примера ftp-клиент Filezilla. Поскольку система не знает о программе, вышеупомянутая строчка
работать не будет. Чтобы запустить неизвестную системе программу, надо указать к ней путь:
Длинныe имена в bat-файлах
Теперь поговорим о путях и пробелах. Первый способ избежать этой проблемы — использование короткого имени.
В примере два имени с пробелами. Заменим их короткими. Правила создания коротких имен следующие: в коротком имени используются первые шесть символов имени без учета пробелов, после имени указывают порядковый номер папки с помощью символа
. Так как папки Program Files и Sound Club у меня в единственном числе, получится следующее:
Если рядом будут присутствовать две папки, например Sound Club и Sound Clown , то следуя правилам, в примере выше надо будет указать SoundC
2 , так как в этом случае Sound Club окажется вторым именем (имена считаются в алфавитном порядке).
Но этот способ неудобен тем, что приходится указывать порядковые номера. Ситуация с Program files более менее нормальная. Мало у кого встретится две подобные папки на системном диске. Но если вы решили установить несколько продуктов Mozilla на свой компьютер. У вас получится несколько папок, например:
Короткими именами для них будут
А теперь представьте, что вы написали BAT файл с упоминанием этих программ. Если удалить Firefox, оставшиеся записи перестанут работать, а если удалить Thunderbird, перестанет работать запись для Sunbird. Короче, способ с короткими именами — не наш способ.
Пробелы и кавычки в bat-файлах
Кавычки на самом деле работают, но не с теми способами, которые обычно советуют. Советуют обычно следующее:
Так команда не сработает, поскольку если посмотреть справку по ней ( start /? ), то в справке вы увидите следующее:
Как видите, первым параметром идёт заголовок окна и он как раз в кавычках. Этот параметр необязательный, но его всё же советуют указывать (например, тут), чтобы избежать ошибок при выполнении команды. Внутри кавычек можно ничего не писать. Получится так:
Также сработает и вариант с заключением в кавычки всех имён с пробелами по отдельности:
Однако, в ряде случаев не работает ничего из вышеописанного. В таких случаях я могу посоветовать использовать команду cd . Переходим на системный раздел, затем с помощью cd в папку Program Files и запускаем программу ( start ):
Я думаю, что такой способ будет работать везде. Теперь еще пара важных моментов. Допустим вы создали батник, запускающий три программы и вам нужно на время исключить запуск одной из трех. Это можно сделать удалением строки или ее комментированием. Первый способ — вандальный, а второй смотрите ниже.
В данном случае отключен запуск установленной в системе программы Defraggler.exe. Комментируют строки, указывая команду rem в начале строки. Все BAT файлы выполняются в окне консоли. Чтобы оно исчезало по окончании выполнения команд, не забывайте в конце писать команду на выход exit.
Запуск приложений из bat-файла
В первой части статьи я в общих чертах рассказал о BAT файлах. Теперь стало понятно — что это такое и с чем его едят. Во второй части речь пойдет уже о более конкретных вещах. Например, о том, как при помощи BAT файла запустить несколько приложений с определенными настройками или в автоматическом режиме установить программу, чтобы не тратить время на ответы типа Вы согласны с условиями лицензионного соглашения? и не нажимать лишние кнопки.
Выше было изложено несколько способов запуска приложений при помощи BAT файла. Самый первый — это короткая команда на запуск установленной в системе программы.
Это не всегда работает. Поэтому такой прием можно вполне применять на какой-то конкретной системе, но в качестве универсального решения он не подходит. Если есть цель заставить работать BAT файл везде и всегда, нужно пользоваться полными путями:
Также я отметил, что в BAT файле обязательно должна присутствовать команда на завершение:
Запуск программ в bat-файлах с параметрами (ключами)
Программу можно не просто запускать, а давать ей дополнительные команды при запуске. Например, скомандовать запускаться свернутой:
Скомандовать в данном случае — значит указать ключ. Ключ указывается через слэш после основной команды ( команда /ключ ). Основной командой в данном случае является start . Правда ключ min работает только в половине случаев, потому как относится именно к команде запуска start , а не к программам, которые эта команда запускает.
Вообще ключей существует очень много и наборы ключей разных программ могут существенно различаться. Есть, правда, несколько общих. Например, ключ справки ( /? или /help ). Чтобы проследить работу этого ключа, рассмотрим практический пример. Откройте консоль (Жмёте + R , вводите cmd , далее Enter ) и набираете в консоли следующее:
Консоль выведет на экран перечень допустимых ключей c комментариями для команды start .

Обратите внимание на ключ /wait . В некоторых случаях он бывает просто незаменим. Например, вы решили с помощью BAT файла распаковать архив с программой и эту самую программу запустить. В батнике получится две команды — на распаковку и на запуск. Поскольку команды при запуске BAT файла выполнятся почти одновременно, архив распаковаться не успеет и запускать будет нечего. Поэтому будет ошибка. В этом случае на помощь придет ключ /wait:
Таким образом система сначала выполнит первое действие, дождется его завершения и только после этого приступит ко второму. Если необходимо подождать конкретный отрезок времени, то проще воспользоваться консольной утилитой Sleep. В нужном месте BAT файла пишете следующую команду (число — количество секунд):
С помощью ключей можно делать многое. Есть возможность устанавливать приложения в тихом режиме. Для этого используется несколько ключей в зависимости от типа инсталятора, применяющегося для установки программы на компьютер:
В ряде случаев бывает очень удобно. Антивирус Avast имеет опцию тихой установки в корпоративной версии. В бесплатной (домашней) версии тихой установки якобы нет. Однако, если вы в курсе как работает инсталятор InstallShield , вы поймете, что это утка , так как этот инсталятор сам по себе поддерживает ключ тихой установки /S . А значит все продукты, выполненные на его базе — тоже. И Avast не исключение. Просто создаете в папке с Avast’ом BAT файл с содержанием
запускаете его и программа устанавливается на компьютер практически без вашего участия. Таким образом можно написать целый список программ для тихой установки и сэкономить время, например, на переустановке системы. В статье про тихую установку можно получить более подробную информацию по ключам.
Есть и другие возможности по управлению программами при помощи BAT файлов. Можно запустить программу, приказав ей открыть файл при запуске. Я пользуюсь этим способом при разработке сайтов. Очень удобно, когда весь твой инструментарий открывает нужные документы и папки нажатием всего одной кнопки:
Отмечу, что все вышеописанные приемы можно применять в различных комбинациях и сочетаниях.
Но важно помнить: всё, что касается выполнения запускаемой в батнике программы, пишется с ней в одной строке.
В качестве эпилога предложу для ознакомления конвертер BAT файлов в приложения формата .exe — Bat_To_Exe_Converter. BAT файл — это не всегда эстетично, а с помощью конвертера можно запаковать батник в exe’шник, оформив его любой иконкой на ваш выбор.
Наткнулся ещё на один конвертер BAT в EXE, можете рассмотреть в качестве альтернативы предыдущей программе: Advanced Bat To Exe Converter
Источник