Перейти к содержимому

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

  • автор:

Как создать bat-файл в Windows? Bat-файл для запуска .exe в командной строке

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

Вat-файлы могут показаться абсолютно бесполезными для простого пользователя компьютера, который использует устройство исключительно для выхода в интернет и использования социальных сетей. Но для более профессиональных пользователей «батник» используется не только для запуска программ, но и для автоматизации рутинных задач, выполняемых на компьютере.

Создание bat-файла для запуска программы

  1. Активировать программу «Блокнот». Если вы вообще не понимаете, что это за программа и как ее активировать, тогда откройте меню «Пуск» и в разделе «стандартные программы» вы его там найдете.
  2. В «Блокноте» можете вносить список инструкций, которые должны будут исполняться при активировании bat-файла. «Батник» называют пакетным документом, потому что он может содержать большой перечень различных команд. Чуть ниже, мы покажем как оформить bat-файл, чтобы осуществить запуск какой-либо программы. На этом этапе важно сосред от очиться и не допустить ошибок. Если команды будут с написаны с о шибкой, тогда bat-файл не будет исполнен. А другой момент, нужно внимательно от нос иться к самим командам, потому что по неопытности некоторые пользователи неправильно составляют bat-файл, который может вывести из строя операционную систему. Поэтому на этом этапе будьте максимально внимательны, так как на вас лежит ответственность за работоспособность системы.
  3. После того как bat-файл заполнен списком команд, его нужно сохранить. Для этого в основном меню «Блокнота» найдите пункт «Файл», а в нем «Сохранить как». Вам необходимо будет выбрать место для сохранения bat-файла. Обычно для этого создают отдельную папку, созданную для файлов такого типа, чтобы в дальнейшем не искать их по всей системе. Перед нажатием кнопки «Сохранить», нужно обязательно указать файлу расширение «.bat».
  • находите нужный файл;
  • нажимаете правым кликом мышки;
  • находите пункт «Изменить».

Bat-файл: запуск программы

  • нужно использовать первые 6 символов названия длинного имени;
  • после сокращения имени нужно использовать знак «~»;
  • после знака «~» обязательно нужно указать порядковый номер используемой папки, на тот случай, если в системе несколько похожих папок;
  • используемое сокращение имен нужно указывать в начале bat-файла.

Заключение

Сегодня мы разобрали, как, используя bat-файл, можно осуществить запуск программы. Если при формировани и «батника» для запуска программ, у вас возникли вопросы, тогда вы можете воспользоваться справкой по использованию bat-файлов. Для этого введите в терминале команду «start /?». Также еще один важный момент при создании bat-файла, о котором нужно помнить — каждый созданный файл должен обязательно заканчиваться командой «exit».

Мы будем очень благодарны

если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.

Batch script для начинающих

Мне 12 и я сам в этой теме плохо шарю, т.к. инфы в инете мало. Пж, без хейта.

Что такое батники и с чем их едят

Пакетный файл или в простонародье батник — это файл, который запускает командную сроку или сокращенно cmd, которая построчно интерпретирует команды, записанные в нем. Подробнее смотрите на https://ru.wikipedia.org/wiki/Пакетный_файл.

Первая программа и основные команды

Чтобы сделать батник, нужно сначала создать текстовый файл с именем test и изменить расширение c .txt на .bat. О том, как можно это сделать, читайте здесь: https://remontka.pro/file-extensions. У вас должен появиться файл с такой иконкой:

Нажимаем на него ПРАВОЙ кнопкой мыши. Должно появиться диалоговое окно. Нажмем «Открыть». Должен открыться блокнот, пишем:

@echo off echo Hello world! pause

В 1-ой сроке («@echo off») префикс ‘@ ‘ означает, что команда не будет выведена на экран(попробуйте его убрать 🙂 ), сама же команда (echo) выводит текст следующий за ней(см. строку 2), НО, если подать строку «off», все последующие команды будут действовать так, как будто перед ними стоит префикс ‘@’, «echo on», соответственно, выключает этот режим. Чтобы вывести символ «%», его нужно дублировать, потом поймете почему :-), для вывода пустой строки поставьте «.» после «echo»
В 3-ей строке команда выводит строку «press any key to continue . . .» (если у вас русский язык — «Для продолжения нажмите любую клавишу . . .») и останавливает программу до нажатия любой клавиши.

Наводим красоту

не эта :)

не делает ничего и служит комментарием к коду

rem Это самая лучшая прога в мире. 

Код включает русские символы и другие из ascii(например: «╬▓☼», можно скопировать с http://pascalguru.ru/psevdograf.html), иначе ascii символы превратятся в кракозябры:

chcp 65001

Следующий код код работает, как команда «pause», но ничего не выводит на экран и не реагирует на нажатие клавиш(я потом объясню, как это работает).

:m goto m

А этот — меняет заголовок окна на «name»

Заголовок окна

title name

Эта команда меняет цвет фона и текста, вместо a и b можно поставить любые шестнадцатеричные цифры(команда не сработает если a = b) см. таблицу ниже. Запись c одной буквой «а» аналогично записи «0a»

color ab

Таблица

Эта — досрочно завершает программу

exit

Переменные

Создать переменную можно с помощью команды set, синтаксис объявления следующий: P.S. это не совсем переменные, это скорее макросы (для тех к кто не знает C/C++ это именованный кусочек кода, имя которого заменяется на этот кусочек кода)

set a=Hello world

Если после «set» добавить флаг «/a» то:

    Переменной задастся значение выражения, а не его текст, например:

set a=2+2 > 2+2 set /a a=2+2 > 4

Чтобы обратиться к переменной, нужно окружить ее символами «%» (так %name%), пример кода:

set /a a=%b%+%b% echo %a%

Подробнее о переменных

Если добавить флаг «/p», то выводиться значение после символа » bash»>@echo off set /p a=Enter str echo %a% pause

следующий код вырезает строку от символа номер «a» до символа номер «b» НЕ включительно(счет идет с нуля, отрицательные числа — счет с конца от единицы). Если аргумент один, то он присваивается числу «b», а «a» = 0

%str:~a,b%

следующий заменяет подстроки «a» в строке на строки «b»:

%str:a=b%

Циклы и условия

Цикл можно создать с помощью команды «for», синтаксис следующий:

for %%i in (a b c) do ( cmd )
for %%i in (a b c) do cmd

(a b c) это список (не обязательно из 3-х элементов) и переменная %%i (нужно ставить символ после процентов, а не между) по очереди проходит по значениям в списке

Если добавить флаг «/l», то переменная в первый раз будет равна «a». К ней каждый раз будет прибавляться «b», пока она не станет больше «c»(тут размер ДОЛЖЕН равняться 3)

запустите этот код, тут все наглядно

@echo off chcp 65001 echo Начало for /l %%i in (1 1 10) do echo %%i echo Конец pause

Команда if выполняет код, если условие верно (или если поставить not после if, когда НЕ верно), вот операторы сравнения:

P.S. строки нужно брать в кавычки «%str%»==»Hello»

Как создать BAT-файл и работать с ним

В статье мы расскажем, как создать BAT-файл, а также как заполнить и запустить его.

Что такое BAT-файл

BATCH, или BAT, — это текстовый файл, который содержит список команд для интерпретатора командной строки Windows. Изначально «батники» назывались BATCH-файлами, однако со временем они получили название BAT, так как чаще всего они имеют расширение .bat (иногда встречается .cmd).

При создании и настройке BAT-файла необходимо учитывать некоторые особенности:

  1. Bat-файл будет работать только на операционной системе Windows.
  2. Для работы с файлом потребуется текстовый редактор: подойдет стандартный Блокнот. Однако для крупного списка команд рекомендуем использовать редактор, в который встроена подсветка синтаксиса: например, Notepad++.

Как создать BAT-файл

Базовые инструменты, которые нужны для создания BAT-файла, по умолчанию встроены в любой версии ОС Windows. Мы опишем процедуру создания тестового файла через Блокнот.

Чтобы создать BAT-файл:

создание батника 1

В поисковой строке наберите Блокнот и нажмите Открыть:

Добавьте строки:

@echo off echo Hello! How are you? pause

создание батника 2

Выберите раздел Файл и кликните Сохранить как:

создание батника 3

Откройте папку, в которую нужно сохранить файл. В строке «Тип файла» выберите Все файлы. Укажите название файла вместе с расширением .bat и нажмите Сохранить:

Если файл сохранился с расширением .txt

Функционал Windows позволяет исправить расширение. Для того чтобы сделать это:

Перейдите в папку, в которой сохранен BAT-файл.

создание батника 4

Выберите вкладку Вид и отметьте галочкой пункт Расширения имен файлов:

создание батника 5

Правой кнопкой мыши кликните по названию файла и нажмите Переименовать. Измените расширение файла на .bat и нажмите клавишу Enter:

Готово, вы создали BAT-файл.

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

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

Команда Аргумент Действие
start Путь к файлу или команда Начать выполнение программы или команды в новом окне
pause Приостановить выполнение файла
cd Название каталога или путь к нему Перейти в указанный каталог
md Название каталога Создать каталог
copy Имена файлов и название каталога, в который нужно их копировать Скопировать файлы в указанный каталог
move Текущий и конечный путь к файлу Переместить файл из одного каталога в другой
del Название файла или папки Удалить указанный объект
call Путь к исполняемому файлу Запустить пакетный файл из другого файла
title Желаемый заголовок Изменить заголовок окна
color Цвет фона и текста (цифра или буква) Изменить цвет фона и текста
exit Завершить выполнение пакетного файла

Как объявить переменную в BAT-файле

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

@echo off set example=Hello! echo %example% pause

Важно: не ставьте пробел после знака равенства — иначе код не будет работать.

Если вы хотите объявить переменную в числовом формате, используйте флаг /a:

@echo off set /a example=2*2 echo %example% pause

Если флаг /a не добавлен, переменной присваивается полное значение после знака равенства.

Как оставлять комментарии в BAT-файле

Если вы заполняете BAT-файл и планируете показать код другому пользователю, рекомендуем оставлять комментарии к командам. Комментарий включает в себя объяснение, как работает та или иная часть кода.

Чтобы BAT-файл работал корректно, комментарии нужно начинать со специальных команд или символов. Например, однострочный комментарий можно оставить при помощи команды rem:

rem comment_text

Вместо comment_text укажите текст комментария.

Другой способ оставить однострочный комментарий — это начать его с двойного двоеточия:

:: comment_text

Вместо comment_text укажите текст комментария.

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

  • comment_text or_ASCII-art — укажите текст комментария,
  • label_name — название метки комментария.

Обратите внимание: все комментарии, которые созданы с помощью goto, должны иметь разные метки.

Примеры BAT-файлов

Корректно заполненные «батники» могут облегчить работу с ОС и файловой системой. Ниже мы добавили примеры BAT-файлов, с помощью которых вы сможете выполнить некоторые действия.

Обновить IP-адреса

Иногда нужно вручную обновить IP-адреса в сетевом интерфейсе. Для этого вы можете открыть командную строку и ввести команду:

ipconfig /renew

Однако после выполнения команды на экране отображается длинный вывод: это не всегда удобно. Однако в BAT-файле можно направить вывод этой команды в текстовый файл. Для этого создайте новый файл и добавьте в него строки:

rem Отключаем отображение текущей команды @echo off rem Переводим вывод выполнения в файл, вывод в командной строке исчезнет ipconfig /renew > C:\Users\Username\OneDrive\Документы\filename.txt

Вместо C:\Users\Username\OneDrive\Документы\filename.txt укажите путь к файлу, в который нужно записать вывод команды.

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

rem Отключаем отображение текущей команды @echo off rem Переводим вывод выполнения в файл, вывод в командной строке исчезнет ipconfig > NUL

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

@echo off chcp 1251 > C:\Users\Username\OneDrive\Документы\filename.txt echo Новые адреса распределяются. Пожалуйста, подождите. ipconfig /renew > C:\Users\Username\OneDrive\Документы\filename.txt echo Готово. Ознакомиться с результатами можно в C:\Users\Username\OneDrive\Документы\filename.txt pause
  • chcp 1251 — кодировка, которую требует ваш интерпретатор,
  • C:\Users\Username\OneDrive\Документы\filename.txt — путь к файлу, в который записывается вывод команды.

Переименовать файлы

Существует несколько способов переименования файлов. Первый — это переименование одного файла с полным указанием названия:

rename old_name.txt new_name.txt
  • old_name.txt — прежнее имя файла,
  • new_name.txt — новое имя файла.

Второй способ — переименование файлов по маске. Предположим, что в каталоге есть файлы с названиями oldname1.txt, oldname2.txt и oldname3.txt. Вам нужно переименовать их на newname1.txt, newname2.txt и newname3.txt. Вы можете это сделать за одну строку с помощью команды:

rename old_name* new_name*

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

rename old_name*.txt new_name*.txt

Удалить все ненужные файлы

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

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

Создайте новый файл и добавьте в него следующие строки:

@echo off del /f /s /q C:\Users\Username\OneDrive\Документы\logs\*.txt
  • /f — флаг, который позволяет удалить все файлы вне зависимости от прав доступа;
  • /s — флаг, который позволяет удалить все файлы в выбранной папке и всех ее подпапках;
  • /q — флаг, который убирает подтверждение удаления файлов;
  • C:\Users\Username\OneDrive\Документы\logs\ — путь к каталогу, в котором нужно удалить файлы;
  • *.txt — маска, которая указывает на удаление всех файлов с расширением .txt в выбранном каталоге.

Как запустить BAT-файл через командную строку

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

  • автоматически,
  • вручную,
  • в скрытом режиме,
  • по расписанию.

Ниже мы опишем каждый из этих способов.

Как выполнить автоматический запуск

Кликните по файлу правой кнопкой мыши.

создание батника 6

Выберите Запуск от имени администратора:

Готово, вы выполнили автозапуск файла.

Как запустить файл вручную

Нажмите Win + R.

создание батника 7

Введите cmd и кликните OK:

Введите полный путь к нужному файлу и нажмите Enter.

Готово, вы запустили файл вручную.

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

Откройте текстовый редактор.
Добавьте строки:

Set WshShell = CreateObject("WScript.Shell") WshShell.Run chr(34) & "C:\Users\Username\OneDrive\Документы\Scripts\test.bat" & Chr(34), 0 Set WshShell = Nothing

Вместо C:\Users\Username\OneDrive\Документы\Scripts\test.bat укажите путь к исполняемому файлу.
Сохраните файл с расширением .vbs.
Запустите файл, созданный на предыдущем шаге.

Готово, вы настроили скрытый запуск.

Как запускать BAT-файл по расписанию

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

Нажмите Win + R.

создание батника 8

Введите taskschd.msc и кликните OK: Batch file

создание батника 9

Выберите Создать простую задачу:

создание батника 10

Укажите имя задачи и нажмите Далее:

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

создание батника 13

Выберите действие Запустить программу. Затем кликните Далее:

создание батника 14

Укажите путь до вашего скрипта (бат-файла) и нажмите Далее:

создание батника 15

Проверьте все параметры запуска и кликните Готово:

Готово, вы настроили запуск по расписанию.

Bat-файлы — их создание и команды

Рассмотрим мощный инструмент автоматизации рутинных задач в семействе операционных систем Windows.

Изображение записи

Рассмотрим мощный инструмент автоматизации рутинных задач в семействе операционных систем Windows.

Что такое bat-файлы?

BAT-файл — это последовательность команд для интерпретатора командной строки в виде текстового файла с расширением .bat или .cmd. Основное предназначение пакетных файлов — автоматизация рутинных действий пользователя компьютера.

Название BAT появилось от английского batch — пакетная обработка. В истории продуктов Microsoft пакетные файлы существовали с первой версии MS-DOS в 80-х годах и позже успешно интегрировались в Microsoft Windows. В MS-DOS командным интерпретатором выступает COMMAND.COM, а начиная с Windows NT и до сих пор используется CMD.EXE.

Интерпретатор COMMAND.COM принимает файлы с расширением .BAT. Расширение .CMD создано для интерпретатора CMD.EXE с целью различать файлы для «старого» и «нового» интерпретаторов. CMD.EXE корректно обрабатывает оба расширения.

Интерпретатор CMD.EXE является частью современных операционных систем семейства Microsoft Windows, несмотря на отсутствие развития с начала 2000-х.

Основы взаимодействия с bat-файлами

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

Создание bat-файлов

создание файла

Для создания пакетных файлов необходимо открыть текстовый редактор и в меню Файл выбрать Сохранить как….

сохранение в формате bat

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

расширения имен

Если вы ошиблись при сохранении и пакетный файл сохранился с расширением txt, то не обязательно совершать повторное сохранение. Можно включить отображение расширения имен файлов и переименовать файл.

Запуск bat-файлов

запуск от имени администратора

Запуск пакетных файлов производится двойным кликом по иконке. Дополнительно можно использовать команду Открыть из контекстного меню, которое доступно при нажатии правой клавиши мыши (ПКМ) по файлу. Если для выполнения команд требуются права администратора, то в том же контекстном меню есть пункт Запуск от имени администратора.

Исполняемые bat-файлы не могут запрашивать права администратора, если командам нужны расширенные права.

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

выполнение команды cmd

Для запуска интерпретатора командной строки необходимо открыть меню Выполнить сочетанием клавиш Win + R, вписать cmd и нажать ОК.

окно интерпретатора

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

Скрытый запуск

Вне зависимости от способа запуска откроется окно, которое может привлекать внимание и раздражать. Для запуска в «скрытом» режиме необходимо использовать другой скриптовой язык Microsoft Windows — VBScript.

По аналогии создаем файл с расширением .vbs и заполняем его следующими командами:

Set WshShell = CreateObject("WScript.Shell") WshShell.Run chr(34) & "С:\путь\до\вашего\скрипта.bat" & Chr(34), 0 Set WshShell = Nothing

Для скрытого запуска следует запускать созданный файл, а не bat-файл. Скрытый запуск bat-файла актуален для автоматизации действий по расписанию, например, создание резервной копии.

Запуск по расписанию

За выполнение действий по расписанию отвечает Планировщик заданий. Открываем меню Выполнить и запускаем программу taskschd.msc.

Выбираем пункт Создать простую задач и заполняем параметры задания:

  • имя для простой идентификации,
  • периодичность и время запуска,
  • действие — Запустить программу,
  • программа или сценарий — путь до вашего .bat-файла или .vbs-файла, который запускает .bat-файл скрытно.

имя файлатриггерповторяемостьзапуск программы

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

В случае разработки собственного bat-файла следует ознакомиться с основами командного интерпретатора.

Команды и синтаксис пакетных файлов

Командный интерпретатор выполняет команды из файла последовательно — строка за строкой. Исключение составляет только оператор GOTO, который «отправляет» к указанной строке. Командный интерпретатор выполняет два вида команд: встроенные команды и внешние исполняемые файлы.

Внешние исполняемые файлы — это любой исполняемый файл, то есть с расширением EXE, CMD или BAT, который доступен в операционной системе. Например, «Блокнот» — это исполняемый файл notepad.exe. Следующая команда приведет к запуску этого приложения с открытым файлом C:\1.txt:

notepad.exe C:\1.txt

Аргументом может быть не только путь, но и ключ — специальный аргумент, который начинается с символа слэш (/). У каждой программы свой «реестр» ключей и их значений.

Обратите внимание, что не все внешние команды «понимают» аргументы, переданные из интерпретатора командной строки. Например, исполняемый файл приложения калькулятор, calc.exe, игнорирует все аргументы командной строки. Внешним исполняемым файлом может быть в том числе другой bat-файл.

встроенные команды

Встроенные команды — это команды, которые являются частью интерпретатора командной строки. Полный список команд доступен по команде HELP. Данные команды не имеют отдельного исполняемого файла.

Иногда в имени файла или каталога встречаются пробелы. Наиболее очевидный пример — каталог Program Files на диске C. В этом случае помогают кавычки. Их можно расставить различными способами. Например:

cd "C:\Program Files\123" cd C:\”Program Files”\123

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

Комментарии

Оставлять комментарии при разработке — хороший тон. Так можно объяснить выполняемые действия и потенциальные ошибки. В пакетных файлах можно оставлять комментарии несколькими способами.

Официальный способ — команда rem или два двоеточия.

rem Это первый комментарий :: Это тоже комментарий

Перечисленные команды позволяют оставлять однострочные комментарии. Если хочется оставить развернутый многострочный комментарий, то прибегают к хитрости с командной GOTO.

goto start === Здесь можно оставить большой комментарий, лицензию или даже ASCII-арт === :start

В конце комментария задаем имя метки, а в начале комментария выполняем команду GOTO c именем метки. Этот способ требует внимания, так как для каждого комментария должна быть своя метка, иначе выполнение bat-файла может отличаться от ожидания разработчика.

Совместимость с MS-DOS

В старых ОС, таких как MS-DOS, было ограничение на отображение имени файлов. На экран выводилось восемь символов имени, точка и три символа расширения. Если имя файла превышало по длине восемь символов, то имя файла отображалось по следующей схеме:

Например, каталог Program Files выглядит следующим образом:

Progra~1

В современных операционных системах такое отображение не применяется, но CMD.EXE до сих пор поддерживает такие запросы к файлам и каталогам.

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

Выберите подходящий из более 100 готовых конфигураций.

Примеры bat-файлов

Рассмотрим несколько примеров bat-файлов. Начнем с базовых команд.

Обновление IP-адреса

Представим простой пример: необходимо обновить аренду IP-адресов на всех сетевых интерфейсах. В командной строке это делается одной командой:

ipconfig /renew

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

rem Отключаем отображение команд. Символ @ отключает отображение текущей команды @echo off rem Переводим вывод выполнения в устройство NUL, вывод исчезнет ipconfig /renew > NUL

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

@echo off echo Выполняется настройка, пожалуйста, подождите. ipconfig /renew > NUL echo Все хорошо. rem Эта команда остановит выполнение до тех пор, пока пользователь не нажмет любую клавишу pause

Скорее всего данный скрипт выведет набор непонятных символов вместо сообщения. Дело в том, что в русскоязычных ОС Windows по умолчанию в CMD.EXE используется кодировка CP866. Блокнот сохраняет в CP1251 (Windows-1251), а Notepad++ — в UTF-8. Для решения проблемы необходимо сменить кодировку интерпретатора командой chcp или сохранить bat-файл в кодировке интерпретатора.

rem Смена кодировки на Windows-1251 chcp 1251 > NUL rem Смена кодировки на UTF-8 chcp 65001 > NUL

Я сохранил файл в кодировке UTF-8 и итоговый скрипт получился таким:

@echo off chcp 65001 > NUL echo Выполняется настройка, пожалуйста, подождите. ipconfig /renew > NUL echo Все хорошо. pause

Создание резервной копии каталога

Перейдем к более жизненной ситуации — создание резервной копии (backup) каталога. Предположим, что каждый архив должен иметь в названии дату создания копии. Создадим каталог, имя которого — текущая дата. Текущая дата хранится в переменной DATE. Для обращения к переменным название переменной помещается между знаками процента.

mkdir %DATE% cd %DATE%

Копирование файлов в текущий каталог производится командой COPY.

 rem файлы 1.txt и 2.txt будут скопированы в текущую папку COPY C:\1.txt C:\2.txt . rem файл 3.txt будет сохранен в текущую папку как example.txt COPY C:\1.txt .\example.txt

Возможно, в резервную копию необходимо дополнить служебную информацию — например, список файлов в корне копии и имя компьютера.

rem Имя компьютера записывается в файл computer.txt hostname > computer.txt rem Список файлов в текущем каталоге записывается в files.txt dir . > files.txt

Обычно резервные копии хранят в zip- или rar-архивах. Из командной строки отлично управляется архиватор 7z.

cd .. 7z -tzip a backup.zip %DATE% 

Переименование файлов

Переименование файлов в Windows производится командой RENAME. Однако эта команда имеет свои особенности.

Во-первых, переименование возможно только в рамках одного диска и одного каталога. Между каталогами одного диска допустимо перемещение, а между разными дисками — только копирование.

 rename abc.txt cba.txt

Во-вторых, возможно переименование по маске. Допустим, есть список фотографий photo000.jpeg, photo001.jpeg и так далее. Нужно сменить префикс с photo на mobile.

rename photo* mobile*

Если в текущем каталоге есть другие файлы с префиксом photo, а переименовать надо только изображения с расширением jpeg, то команда модифицируется:

rename photo*.jpeg mobile*.jpeg

Удаление файлов

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

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

rem Ищем все файлы с расширением jpeg в каталоге work rem Ключ /r включает в поиск все подкаталоги в каталоге work for /r work %%file in (*.jpeg) do ( rem Выводим имя файла echo %%file delete %%i )

Заключение

Командный интерпретатор CMD.EXE существует долгое время, но, даже несмотря на отсутствия развития, остается востребованным инструментом для автоматизации рутинных действий в операционной системе Microsoft Windows.

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

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