Разделы сайта
Выбор редакции:
- Чем отличается интерфейс PCI Express от PCI?
- Команды bat-файлов. Как создать bat-файл? Базовые команды. Bat файлы, примеры Содержимое bat файла
- Когнитивные беспроводные самоорганизующиеся сети
- Какая информация - важная
- Origin – где взять последнюю версию, как скачать и правильно установить
- Как настроить горячие клавиши для любой программы Как настроить клавиши клавиатуры
- Не торопитесь с покупкой DVB-T2 тюнеров
- QQ: регистрируемся и устанавливаем секретные вопросы Вот краткий перечень требований к email-маркетингу в Китае
- Как поставить комментарии вконтакте на wordpress
- Веб-камера ВКонтакте: новые функции
Реклама
Команды bat-файлов. Как создать bat-файл? Базовые команды |
BAT файл это код программы сохраненный с расширением.bat или.CMD кому как нравится. Возможности файлов bat практически безграничны, но как правило програмисты используют эти расширения в простых и рутинных делах. С помощью файла bat можно открывать файлы на компьютере, копировать перемещать и удалять файлы по маске и без, запускать скрипты сторонних программ, открывать браузер с нужным url. Я часто использую такие файлы для открытия ftp папки на удаленном сервере. Как создать bat файлСоздать файлы бат проще простого. Откройте обычный текстовый редактор и сохраните его с расширением.bat. Также можно использовать продвинутую программу «notepad++» Вот образец кода чтобы написать bat файл:
Данный код откроет папку «program files» на диске C:\ Написание.bat (бат) файлов требует от пользователя компьютера особой осторожности. Так как батники могут удалять целые директории, форматировать раздел компьютера
Пример кода bat — Создать 100 папок:
сделать bat ом можно и (Вирус) вредную программу скрипт: К примеру — нижеприведенный код удалит важные exe файлы.
Команда создать папку bat файломНижеприведенный код создаст 3 папки в том месте где сам файл расположен. Также первая созданная папка будет содержать еще одну вложенную папку. Так как имена папок написаны на кирилице то дописываем строку кодировки chcp 1251. Такой файл обычным блокнотом написать нельзя, так как в нем нет возможности изменить кодировку русских букв. Воспользуйтесь программой notepad++.
Скачать Bat файл— файл создает 3 папки Пример кода bat как открыть папку
Формат bat чем открыть?Также как и создание файлов.bat в текстовом редакторе, их можно открыть тем же блокнотом, wordpad, или notepad++. Единственное что нужно помнить при открытии файла bat — при двойном щелчке мыши на файле он запустит программу. Т.Е чтобы открыть его для редактирования, наведите курсор на редактируемый файл и правой кнопкой мыши откройте контекстное меню где выбирайте открыть с помощью notepad++ Также если в контекстном меню нажать на просто открыть Вы также запустите исполнение бат-файла. Есть еще один способ: Откройте текстовый редактор блокнот и перетащите в него ваш редактируемый файл.
Основные операторы Bat-файла
Для более детального описания кода bat файлов читайте справку по Windows Пакетные или batch файлы это обычные текстовые файлы, содержащие наборы команд интерпритатора и имеющие расширение bat или cmd (cmd работают только в ОС семейства NT). Редактировать такие файлы можно при помощи блокнота или любого другого текстового редактора. Откройте блокнот и наберите две следующих строки: @echo This batch file This batch file После нажатия любой клавиши окно закроется, т.к. bat-файл выполнен. Команды, используемые в bat файлах Список команд, которые можно использовать в bat файлах, можно просмотреть, введя в командной строке (Пуск - Выполнить - cmd для Windows семейтва NT или Пуск - Выполнить - command для линейки 9х) команду Результат работы help - список доступных команд с краткими пояснениями к ним. Чтобы получить более подробную информацию по интересующей команде введите в командной строке help имя_команды. Например, чтобы получить подробную справку по ключам команды AT выполните следующую команду: В результате, на экран будет выведен список ключей для запуска команды AT из bat файла. start имя_файла.txt Результатом выполнения этой команды станет открытие файла имя_файла.txt, а сам bat файл завершит свою работу. Такой способ хорош, если лог-файл небольшого размера, иначе Блокнот откажется его открывать, предложив использовать WordPad. Но эта проблема так же решаема, что и будет показано в дальнейших примерах. Как автоматизировать запуск bat файлов Очень часто необходимо автоматизировать запуск bat файлов для выполнения ими рутинных операций. Для запуска bat файлов по расписанию наиболее подходит Планировщик, входящий в стандартную поставку Windows. С это помощью можно очень гибко настроить запуск пакетного файла в определенные дни или часы, с определенным интервалом. Можно создать несколько расписаний и т.д. Для локального запуска batch файлов можно пользоваться решениями от третьих фирм, благо платных и бесплатных альтернатив стандартному Планировщику великое множество. Batch файлы так же могут использоваться как логин-скрипты в доменах. При таком их использовании они будут исполняться при каждом входе пользователя в сеть не смотря на его желание. С их помощью можно автоматизировать сбор информации о машинах или о программном обеспечении, установленном на компьютерах пользователей, принудительно менять настройки Windows, устанавливать незаметно для пользователя программное обеспечение и автоматизировать решение других задач, ручное исполнение которых заняло бы очень много времени. Как создать файл с произвольным именем из bat файла Для создания файла в процессе выполнения пакетного файла используется символ перенаправления. Он выглядит так: @echo Start file>C:\1.txt После выполнения этой команды в корне диска С будет создан текстовый файл со строкой Start file. set datetemp=%date:~-10% Эти две строки работают следующим образом. Сначала в памяти создаем переменную datetemp, которой присваиваем 10 символов справа налево от системной переменной DATE. Таким образом, теперь во временной переменной datetemp содержится только текущая дата. Следующией строкой перенаправляем вывод символа точка в файл, имя которого берем из переменной datetemp, а расширение txt указываем явно. Файл будет создан на системном диске компьютера, где выполняется bat файл. При сборе администратором информации о компьютерах в сети будет удобнее добавить к имени файла имя компьютера. Это легко можно сделать при помощи следующей команды: @echo .>C:\FolderName\%COMPUTERNAME%.txt Эта команда в ходе выполнения пакетного файла создаст на диске С текстовый файл с именем того компьютера, на котором выполняется пакетный файл. Как создать папку из bat файла Для создания папки используется команда MKDIR или ее сокращенный аналог MD. Для создания папки из bat файла нужно использовать следующую команду: После выполнения такой команды будет создана папка FolderName в папке, откуда запущен bat файл. Чтобы создать файл в отличном от запуска bat файла месте, например в корне диска D, используйте явное указание расположения новой папки. Команда будет выглядеть так: MD D:\FolderName При создании папок можно пользоваться системными переменными. Например, можно создать в корне диска D папку с именем текущего пользователя. Для этого понадобится переменная %USERNAME%, а команда будет выглядеть следующим образом: MD D:\%USERNAME% Можно еще более усложнить команду и создать папку с именем текущего пользователя на системном диске его компьютера. Команда для этого будет выглядеть так: MD %SYSTEMDRIVE%\%USERNAME% При создании папок или файлов можно использовать любые системные переменные или их части. Следующий пример демонстрирует создание на системном диске компьютера пользователя папки с именем равным текущей дате. set datetemp=%date:~-10% Эта конструкция работает следующим образом. Как перенаправить результат выполнения команд в файл Часто, при выполнении сложного bat файла в автоматическом режиме проверить результаты его работы бывает затруднительно по многим причинам. Поэтому проще записывать результаты работы команд batch файла в текстовый файл (лог-файл). а потом анализировать правильность работы bat файла по этому логу. @echo off Первая строка отключает вывод самих команд. Таким образом, в лог-файл будут записаны только результаты их выполнения. Сохраните этот пакетный файл под именем, например, 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 После запуска файла 1.bat в папке C:\LOG будет создан файл с именем, равным дате запуска bat-файла, например, 13.01.2004.txt Это и будет отчет о работе пакетного файла 1.bat Start 19:03:27,20 Таким образом, для выполнения перенаправления результатов работы bat-файла в лог-файл нужно использовать символ перенаправления > Синтаксис таков: Путь\ИмяФайла.bat>Путь\ИмяЛогФайла.txt Расширение лог-файла может быть любым. При желании, отчет о выполнении пакетного задания можно оформить даже в виде страницы html (соответствующие теги могут быть выведены в лог-файл так, как выводились комментарии в примере 1.bat) и скопировать его на корпоративный сервер. Как автоматически ответить на запрос о подтверждении Некоторые команды при выполнении требуют подтверждения потенциально опасного действия. Например, такие команды как format или del предварительно запросят подтверждения на дальнейшее выполнение. Если одна из этих команд выполняется в пакетном файле, то запрос на подтверждение остановит выполнение пакетного файла и он будет ожидать от пользователя выбора одного из предложенных вариантов. Причем, если результат выполнение пакетного файла перенаправлен в лог-файл, то пользователь не увидит запроса на подтверждение и batch файл будет выглядеть зависшим. Для исправления таких неприятностей можно перенаправить нужный ответ в команду. Т.е. выполнить обратное действие для перенаправления вывода результатов работы команды в файл. Эта команда должна удалить все файлы из указанной папки. Но предварительно будет выдан запрос для подтверждения следующего содержания: C:\Folder\*, Продолжить ? Выполнение команды будет остановлено до тех пор, пока не будет нажата либо клавиша Y, либо клавиша N. При выполнении пакетного файла в автоматическом режиме, его исполнение остановится. echo Y|del C:\Folder На экране будет показан запрос на подтверждение удаления всех файлов в папке Folder, но уже с положительным ответом (Y). Все файлы из папки Folder будут удалены. Как отключить вывод на экран команд при выполнении пакетного файла При выполнении пакетного файла на экран, помимо результатов работы команды, выводятся и сами команды. Чтобы отключить вывод команд, можно использовать символ @. Эта команда выведет на экран команду echo Testing, а на следующую строку - результат ее работы, слово Testing. Эта команда выведет на экран только результат работы команды, т.е. слово Testing. Сама команда выведена не будет. Эта команда отключит вывод команд на экран на протяжении выполнения всего пакетного файла. Чтобы сама команда не выводилась, она начинается с символа @. Как из одного bat-файла запустить другой Иногда, при выполнении пакетного файла, возникает необходимость запустить другой пакетный файл. Причем, в некоторых случаях, выполнение основного пакетного файла должно быть приостановлено, пока выполняется вспомогательный файл, а в других вспомогательный файл должен работать параллельно с основным. Второй с именем 2.bat и также содержащий одну команду Теперь запустим файл 1.bat Откроется окно, в котором будет предложено нажать любую клавишу для продолжения, после нажатия которой окно закроется. Таким образом, вызов из одного пакетного файла другого при помощи команды call останавливает исполнение пакетного файла до тех пор, пока не завершится выполнение пакетного файла, вызванного командой call. В другом случае, надо запустить из bat файла либо приложение, либо другой пакетный файл, не прерывая выполнения основного пакетного файла. Такое нередко бывает нужно сделать, например, принудительно открыв лог работы пакетного файла, запланированного на ночь, чтобы с утра, пользователь мог проконтролировать правильность его выполнения. Для этого используется команда start Исправим в файле 1.bat строку на и запустим файл 1.bat Теперь открылось окно, в котором для продолжения надо нажать любую кнопку, а окно основного пакетного файла (1.bat) отработав закрылось. Как отправить сообщение из bat-файла Когда пакетный файл исполняется на одной из машин в сети, то удобно проинформировать администратора об окончании его выполнения при помощи сообщения, отправленного на машину администратора. Сделать это можно, включив в пакетный файл команду net send name Message text Где name имя машины или пользователя, которому адресуется сообщение, а Message text - текст сообщения. После выполнения этой команды пользователю name будет отправлено сообщение. Как автоматизировать удаление файлов по типу Чтобы очистить диск от временных файлов можно использовать команду del /f /s /q C:\*.tmp Где Будьте аккуратны с ключем /q и типами удаляемых файлов. Команда удаляет, не спрашивая разрешения и при указании неправильного типа файлов может удалить лишнего. Как изменить IP адрес компьютера из пакетного файла IP адрес можно изменить при помощи команды netsh. netsh interface ip show address Результат работы этой команды - отображение текущей конфигурации сетевого интерфейса. Нас интересует название интерфейса. Предположим, что он называется FASTNET. 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. Как узнать имя компьютера из bat файла Чтобы узнать имя компьютера при выполнении bat файла (чтобы использовать это значение в дальнейшем) используйте команду Эта команда возвращает имя компьютера, на котором она запущена. Как переименовать файлы по маске из пакетного файла Иногда возникает необходимость переименовать все файлы в папке по шаблону из пакетного файла. Сделать это можно при помощи следующей команды в bat-файле: for /f "tokens=*" %%a in ("dir /b PATH\*.*") do ren PATH\%%a Prefix%%a В этой строке надо заменить PATH\ на путь к файлам, которые будут переименованы, а Prefix на те символы, которые будут добавлены к имени файла при переименовании. Второй вариант: Чтобы использовать символ процент (%) в пакетном файле его надо написать дважды. Например Как из пакетного файла сделать экспорт реестра 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% В данном примере текущая системная дата сначала сохраняется в переменной, затем (во второй строке) системная дата устанавливается на 1-е января 2004 года, а потом вызывается программа, которая проверяет системную дату. В данном примере это Блокнот. До тех пор, пока открыт Блокнот, пакетный файл находится в ожидании, не завершаясь и не переводя системную дату обратно. Как только Блокнот будет закрыт, пакетный файл продолжит свое выполнение и установит системную дату на сохраненное в переменной tempdate значение, т.е. на то, которое было до запуска пакетного файла. Не забывайте, что если путь до файла, которым запускается программа, содержит пробелы, то его (путь) необходимо заключить в кавычки. Если путь содержит кириллицу, то при написании пакетного файла необходимо использовать текстовый редактор, поддерживающий кодировку DOS (например, FAR). В противном случае, при запуске пакетного файла будет выведено сообщение о том, что "указанный файл не является внутренней или внешней коммандой...". Если программа проверяет текущую системную дату только при своем запуске и во время работы больше этого не делает, то пакетный файл можно модифицировать, добавив перед именем исполняемого файла программы оператор start, т.е. наш пример будет выглядеть так: set tempdate=%date:~-10% В этом случае, пакетный файл изменит системную дату, запустит программу и не дожидаясь ее завершения вернет дату на ту, которая была до запуска программы. Как в bat файле дождаться появления определенного файла Иногда необходимо при появлении определенного файла в папке выполнить какое-то действие. Чтобы организовать проверку появления файла в папке можно использовать следующий пакетный файл :test Такой пакетный файл будет проверять с интервалом 10 секунд наличие в корне диска С файла 1.txt и когда файл 1.txt появится, будет выполнено действие, указанное после метки go, т.е. в этом примере будет запущен Блокнот. :test Когда файл 1.txt скопировался на диск С не полностью, либо занят другим приложением, попытка его переименовать вызовет ошибку и цикл будет повторяться до тех пор, пока файл не скопируется полностью либо не будет освобожден. После того, как команда rename c:\1.txt 1.txt будет выполнена без ошибки (т.е. файл свободен), то с ним можно выполнять любые действия. В последнем примере это его удаление. Как добавить комментарии в bat-файл При написании большого пакетного файла очень полезно добавлять комментарии к его основным блокам. Это позволит с легкостью разобраться в том, что делают эти блоки по прошествии времени. Люди, которым знаком термин батник, знают, что BAT файлы могут существенно упростить жизнь и экономить время, если уметь их правильно писать и использовать. В этой статье я расскажу о том, как создавать BAT файлы и познакомлю вас с распространенными ошибками, которые обычно возникают при их написании. Создать BAT файл очень просто. Достаточно открыть блокнот и сохранить пустой лист с расширением .bat
, выбрав опцию Сохранить как... и написав в поле Имя файла что-нибудь оканчивающееся на .bat
, например test.bat
. Редактировать BAT файл можно в блокноте или любом другом текстовом редакторе, ориентированным на работу с кодом. Теперь перейдем непосредственно к практической информации. В сети многие ищут ответ на вопрос Как быть с пробелами в BAT файлах? . В путях к папкам и исполняемым файлам наличие пробела вызывает ошибку. Самый распространенный ответ: Заключи путь в кавычки. И этот ответ не верен. Правда некоторые будут с пеной у рта утверждать, что он работает. Итак, появилось два почему - почему не верен и почему некоторые будут. На Windows (как, впрочем, и на UNIX) установленные в системе программы соответствующим образом регистрируются системой. Поэтому некоторые из установленных программ могут запускаться одной простой командой из BAT файла или из апплета Выполнить панели Пуск. Одной из таких программ является Firefox: start firefoxЕсли после этой команды писать путь к исполняемому файлу, то происходит следующее: запускается обозреватель Firefox и пробует обработать запрос, то есть файл, путь к которому указан. То есть, если указать следующее: start firefox C:\Program Files\Mozilla Firefox\firefox.exeОбозреватель откроется, чтобы не было написано после start firefox . Именно поэтому некоторые товарищи будут уверять что все прекрасно работает. Однако, если взять портативную программу, то ситуация окажется совсем иная. Рассмотрим в качестве примера ftp-клиент Filezilla. Поскольку система не знает о программе, вышеупомянутая строчка start filezillaработать не будет. Чтобы запустить неизвестную системе программу, надо указать к ней путь: start D:\FileZilla\FileZilla.exeДлинныe имена в bat-файлахТеперь поговорим о путях и пробелах. Первый способ избежать этой проблемы - использование короткого имени. start C:\Program Files\Sound Club\scw.exeВ примере два имени с пробелами. Заменим их короткими. Правила создания коротких имен следующие: в коротком имени используются первые шесть символов имени без учета пробелов, после имени указывают порядковый номер папки с помощью символа ~ . Так как папки Program Files и Sound Club у меня в единственном числе, получится следующее: Program Files - Progra~1 Sound Club - SoundC~1 start C:\Progra~1 \SoundC~1 \scw.exe Если рядом будут присутствовать две папки, например Sound Club и Sound Clown , то следуя правилам, в примере выше надо будет указать SoundC~2 , так как в этом случае Sound Club окажется вторым именем (имена считаются в алфавитном порядке). Но этот способ неудобен тем, что приходится указывать порядковые номера. Ситуация с Program files более менее нормальная. Мало у кого встретится две подобные папки на системном диске. Но если вы решили установить несколько продуктов Mozilla на свой компьютер. У вас получится несколько папок, например: Mozilla Firefox Mozilla Thunderbird Mozilla Sunbird Короткими именами для них будут Mozill~1 Mozill~2 Mozill~3 А теперь представьте, что вы написали BAT файл с упоминанием этих программ. Если удалить Firefox, оставшиеся записи перестанут работать, а если удалить Thunderbird, перестанет работать запись для Sunbird. Короче, способ с короткими именами - не наш способ. Пробелы и кавычки в bat-файлахКавычки на самом деле работают, но не с теми способами, которые обычно советуют. Советуют обычно следующее: start "C:\Program Files\Sound Club\scw.exe"Так команда не сработает, поскольку если посмотреть справку по ней (start /? ), то в справке вы увидите следующее: START ["заголовок"] [команда/программа] [параметры]Как видите, первым параметром идёт заголовок окна и он как раз в кавычках. Этот параметр необязательный, но его всё же советуют указывать (), чтобы избежать ошибок при выполнении команды. Внутри кавычек можно ничего не писать. Получится так: start "" "C:\Program Files\Sound Club\scw.exe"Также сработает и вариант с заключением в кавычки всех имён с пробелами по отдельности: start C:\"Program Files"\"Sound Club"\scw.exeОднако, в ряде случаев не работает ничего из вышеописанного. В таких случаях я могу посоветовать использовать команду cd . Переходим на системный раздел, затем с помощью cd в папку Program Files и запускаем программу (start ): %SystemDrive% cd \Program Files\Sound Club\ start scw.exeЯ думаю, что такой способ будет работать везде. Теперь еще пара важных моментов. Допустим вы создали батник, запускающий три программы и вам нужно на время исключить запуск одной из трех. Это можно сделать удалением строки или ее комментированием. Первый способ - вандальный, а второй смотрите ниже. start firefox start jetaudio rem start defragglerВ данном случае отключен запуск установленной в системе программы Defraggler.exe. Комментируют строки, указывая команду rem в начале строки. Все BAT файлы выполняются в окне консоли. Чтобы оно исчезало по окончании выполнения команд, не забывайте в конце писать команду на выход exit. start firefox start jetaudio rem start defraggler exitЗапуск приложений из bat-файлаВ первой части статьи я в общих чертах рассказал о BAT файлах. Теперь стало понятно - что это такое и с чем его едят. Во второй части речь пойдет уже о более конкретных вещах. Например, о том, как при помощи BAT файла запустить несколько приложений с определенными настройками или в автоматическом режиме установить программу, чтобы не тратить время на ответы типа Вы согласны с условиями лицензионного соглашения? и не нажимать лишние кнопки. Выше было изложено несколько способов запуска приложений при помощи BAT файла. Самый первый - это короткая команда на запуск установленной в системе программы. start firefoxЭто не всегда работает. Поэтому такой прием можно вполне применять на какой-то конкретной системе, но в качестве универсального решения он не подходит. Если есть цель заставить работать BAT файл везде и всегда, нужно пользоваться полными путями: start C:\"Program Files"\"Mozilla Firefox"\firefox.exeТакже я отметил, что в BAT файле обязательно должна присутствовать команда на завершение: start C:\"Program Files"\"Mozilla Firefox"\firefox.exe exitЗапуск программ в bat-файлах с параметрами (ключами)Программу можно не просто запускать, а давать ей дополнительные команды при запуске. Например, скомандовать запускаться свернутой: start /min D:\FileZilla\FileZilla.exe exitСкомандовать в данном случае - значит указать ключ. Ключ указывается через слэш после основной команды (команда /ключ ). Основной командой в данном случае является start . Правда ключ min работает только в половине случаев, потому как относится именно к команде запуска start , а не к программам, которые эта команда запускает. Вообще ключей существует очень много и наборы ключей разных программ могут существенно различаться. Есть, правда, несколько общих. Например, ключ справки (/? или /help ). Чтобы проследить работу этого ключа, рассмотрим практический пример. Откройте консоль (Жмёте + R , вводите cmd , далее Enter ) и набираете в консоли следующее: start /?Консоль выведет на экран перечень допустимых ключей c комментариями для команды start . Обратите внимание на ключ /wait . В некоторых случаях он бывает просто незаменим. Например, вы решили с помощью BAT файла распаковать архив с программой и эту самую программу запустить. В батнике получится две команды - на распаковку и на запуск. Поскольку команды при запуске BAT файла выполнятся почти одновременно, архив распаковаться не успеет и запускать будет нечего. Поэтому будет ошибка. В этом случае на помощь придет ключ /wait : Таким образом система сначала выполнит первое действие, дождется его завершения и только после этого приступит ко второму. Если необходимо подождать конкретный отрезок времени, то проще воспользоваться консольной утилитой . В нужном месте BAT файла пишете следующую команду (число - количество секунд): start Sleep.exe 15С помощью ключей можно делать многое. Есть возможность устанавливать приложения . Для этого используется несколько ключей в зависимости от типа инсталятора, применяющегося для установки программы на компьютер: /S /s /q /silent и ряд других В ряде случаев бывает очень удобно. Антивирус Avast имеет опцию тихой установки в корпоративной версии. В бесплатной (домашней) версии тихой установки якобы нет. Однако, если вы в курсе как работает инсталятор InstallShield , вы поймете, что это утка, так как этот инсталятор сам по себе поддерживает ключ тихой установки /S . А значит все продукты, выполненные на его базе - тоже. И Avast не исключение. Просто создаете в папке с Avast"ом BAT файл с содержанием start avast.exe /S exitзапускаете его и программа устанавливается на компьютер практически без вашего участия. Таким образом можно написать целый список программ для тихой установки и сэкономить время, например, на переустановке системы. В статье можно получить более подробную информацию по ключам. Есть и другие возможности по управлению программами при помощи BAT файлов. Можно запустить программу, приказав ей открыть файл при запуске. Я пользуюсь этим способом при разработке сайтов. Очень удобно, когда весь твой инструментарий открывает нужные документы и папки нажатием всего одной кнопки: rem соединение с ftp-сервером start /min D:\FileZilla\FileZilla.exe "ftp://логин:пароль@сервер" rem открытие index.php в Firefox start C:\"program files"\"mozilla firefox"\firefox.exe "http://localhost/папка_сайта/index.php" rem открытие start.html в текстовом редакторе start /min C:\"Program Files"\текстовой_редактор.exe "E:\сервер\папка_сайта\index.html" rem открытие папки с файлами сайта start /min E:\сервер\папка_с_сайтом rem выход из консоли exitОтмечу, что все вышеописанные приемы можно применять в различных комбинациях и сочетаниях. start /min /wait program.exe /m /S start C:\Directory\program2.exe "C:\Files\file.odt" exitНо важно помнить: всё, что касается выполнения запускаемой в батнике программы, пишется с ней в одной строке. start C:\"program files"\"mozilla firefox"\firefox.exe "http://localhost/папка_сайта/index.php"В качестве эпилога предложу для ознакомления конвертер BAT файлов в приложения формата .exe - . BAT файл - это не всегда эстетично, а с помощью конвертера можно запаковать батник в exe"шник, оформив его любой иконкой на ваш выбор. Наткнулся ещё на один конвертер BAT в EXE, можете рассмотреть в качестве альтернативы предыдущей программе: Advanced Bat To Exe Converter Нередко советы по тем или иным действиям и исправлениям в Windows 10, 8 и Windows 7 включают в себя шаги наподобие: «создайте файл.bat со следующим содержимым и запустите его». Однако, начинающий пользователь не всегда знает, как это сделать и что собой представляет такой файл. В этой инструкции подробно о том, как создать командный файл bat, запустить его и некоторая дополнительная информация, которая, возможно, окажется полезной в контексте рассматриваемой темы. В командном файле вы можете запускать любые программы и команды из этого списка: https://technet.microsoft.com/ru-ru/library/cc772390(v=ws.10).aspx (правда, некоторые из указанных могут отсутствовать в Windows 8 и Windows 10). Далее - лишь некоторые базовые сведения для начинающих пользователей. Чаще всего бывают следующие задачи: запуск программы или нескольких программ из.bat файла, запуск какой-то функции (например, ). Для запуска программы или программ используйте команду: Start "" путь_к_программе Если путь содержит пробелы, возьмите весь путь в двойные кавычки, например: Start "" "C:\Program Files\program.exe" После пути к программе можно также указать параметры, с которыми она должна запускаться, например (аналогично, если параметры запуска содержат пробелы, возьмите их в кавычки): Start "" c:\windows\notepad.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:\windows\notepad.exe Для закрытия окна команд после выполнения всех команд (хотя, обычно оно и так закрывается при использовании start для запуска), используйте команду exit в последней строке. В случае, если консоль все равно не закрывается после запуска программы, попробуйте использовать такую команду: Cmd /c start /b "" путь_к_программе параметры Примечание: в данном команде, если пути к программе или параметры содержат пробелы, могут быть проблемы с запуском, которые можно решить так: Cmd /c start "" /d "путь_к_папке_с_пробелами" /b имя_файла_программы "параметры_с_пробелами" Как уже было отмечено, это лишь очень базовые сведение о наиболее часто используемых командах в bat файлах. При необходимости выполнить дополнительные задачи, попробуйте найти нужную информацию в интернете (поищите, например, «сделать что-то в командной строке» и используйте эти же команды в файле.bat) или задайте вопрос в комментариях, я постараюсь помочь. Писать bat-файлы может каждый! Командный процессор В состав многих операционных систем, в том числе, разработанных корпорацией Microsoft, входит командный процессор. Так называется программа, которая инициирует выполнение всевозможных действий в ответ на команды, вводимые пользователем с клавиатуры. В основном эти действия заключаются в запуске нужных программ с теми или иными параметрами. Но не только; дальше мы увидим, что некоторые команды выполняются непосредственно командным процессором. В основном это те команды, которые служат для управления контекстом и последовательностью выполнения команд. Однако мы не будем особенно глубоко задумываться о природе команд, во всяком случае, без необходимости. Важнее другое: любая программа, которую технически возможно запустить из командной строки, рассматривается командным процессором как команда. Он не делает различий между «родными» командами, изначально встроенными в операционную систему, и программами, которые были установлены поверх нее. Для того чтобы запустить командный процессор: Нажмите на кнопку Пуск . На экран будет выведено главное меню. Выберите в главном меню пункт Выполнить. На экран будет выведено диалоговое окно Запуск программы . В поле Открыть введите строку cmd . Нажмите на кнопку OK . На экран будет выведено окно командного процессора. Командная строка и командыОкно командного процессора в первозданном виде выглядит мрачно, и работать с ним большинству людей не очень удобно. Намного проще пользоваться файловыми менеджерами в стиле Norton Commander. В них предусмотрены как средства для быстрой навигации по файловой системе, так и срока для ввода команд. Для того чтобы ввести команду: Наберите текст команды в командной строке. Нажмите на клавишу Enter . Командный процессор и команды операционной системы описаны в эксплуатационной документации на последнюю. Эта документация частично содержится внутри самой операционной системы. Для доступа к ней предназначена команда help . По этой команде на экран выводится список доступных команд. Для того чтобы получить описание конкретной команды, в качестве параметра команда help следует указать ее имя. Командная строка, показанная на следующем листинге, выводит на экран описание команды for . Если вы попробовали ввести команду help , то наверно обратили внимание, что результат ее работы (т.н. выдача) не умещается на один экран. Та же проблема возникает с текстом описания команды for . Хорошая новость состоит в том, что выдачу можно перенаправить в файл. Командная строка, показанная на следующем листинге, формирует файл commands.txt , содержащий список всех команд MS-DOS. help > commands.txt Для того чтобы сформировать файл с описанием команды for , надо дать такую команду (имя выходного файла можете сделать любым). help for > for.txt Всего в современных операционных системах корпорации Microsoft чуть меньше 80 команд, и описать их в одной статье невозможно. Здесь мы можем только упомянуть о нескольких командах, полезных для автоматизации обработки файлов и показать, как ими пользоваться. Эти команды будут в дальнейшем использоваться в примерах. Детали вы всегда сможете уточнить по команде help или в справочнике. copy - копирование одного или нескольких файлов; del - удаление одного или нескольких файлов; move - перемещение одного или нескольких файлов или каталогов; rename (сокращенно ren ) - переименование одного или нескольких файлов или каталогов; Xcopy - копирование дерева подкаталогов;mkdir (сокращенно md ) - создание каталога; rmdir (сокращенно rd ) - удаление каталога. Одно из общих правил синтаксиса команд MS-DOS состоит в том, что при указании параметров сначала указывается источник, а потом результат. Например, если мы хотим переместить файл beer.txt из каталога box в каталог table , мы должны ввести команду, приведенную на следующем листинге. move box\beer.txt table Сначала что переместить, потом куда переместить. Если мы хотим переименовать файл lena.txt в файл natasha.txt , то команда должна быть записана так, как показано ниже. ren lena.txt natasha.txt Сначала что переименовать, потом во что переименовать. Текущий каталог. Абсолютные и относительные путиПри работе с файловыми командами исключительную важность приобретает понятие текущего каталога. Дело в том, что при указании файла в качестве параметра команды мы всегда используем один из двух возможных способов указания на них: либо абсолютный путь, либо относительный путь. В полном пути мы указываем все, начиная с диска (или сетевого имени компьютера), например d:\misha\box\beer.txt . Какой бы каталог ни оказался текущим в момент ввода команды, полный путь будет соответствовать одному и тому же файлу. Для относительного пути текущий каталог служит отправной точкой. Простейший случай относительного пути - имя файла. В контексте выполнения команды оно означает файл с таким именем, расположенный в текущем каталоге. Для записи относительного пути к текущему каталогу существует условная запись . (точка). Для записи относительного пути к каталогу, в котором содержится текущий каталог, существует условная запись .. (две точки). Команда, показанная на следующем листинге, копирует все файлы из текущего каталога в каталог neighbour , расположенный рядом с ним. |
Читайте: |
---|
Популярное:
Новое
- Команды bat-файлов. Как создать bat-файл? Базовые команды. Bat файлы, примеры Содержимое bat файла
- Когнитивные беспроводные самоорганизующиеся сети
- Какая информация - важная
- Origin – где взять последнюю версию, как скачать и правильно установить
- Как настроить горячие клавиши для любой программы Как настроить клавиши клавиатуры
- Не торопитесь с покупкой DVB-T2 тюнеров
- QQ: регистрируемся и устанавливаем секретные вопросы Вот краткий перечень требований к email-маркетингу в Китае
- Как поставить комментарии вконтакте на wordpress
- Веб-камера ВКонтакте: новые функции
- Добавить в избранные закладки для всех браузеров Javascript добавить в избранное