Что такое командный файл

Что такое командный файл?

Часто многим приходилось слышать о командном файле. С его помощью многие «продвинутые» пользователи выполняют всевозможные автоматические задачи на компьютере. Что же такое командный файл и где его взять?

Все команды, которые можно использовать в командном файле должны соответствовать синтаксису командной строки. Справка Windows содержит подробное описание синтаксиса всех этих команд. Создать BAT файл можно с помощью обычного текстового редактора, такого как Блокнот. Открыв блокнот в нём нужно написать такую строку:

После чего следует сохранить этот файл в любом удобном месте и изменить расширение с txt на bat.

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

Ключ /S необходим для удаления файлов в подпапках, а ключ /Q – для отключения вывода подтверждения на удаление файлов.

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

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

Источник

Что такое командный файл

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

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

Например, следующий код создает новую папку с именем текущей даты на системном диске компьютера и экспортирует из реестра Windows куст HKEY_CURRENT_USER\Software в файл с именем backup.reg.

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

Чтобы просмотреть содержимое или изменить командный файл необходимо щелкнуть по нему правой кнопкой мыши и выбрать пункт «Изменить». Он откроется в текстовом редакторе, где в него можно внести требуемые изменения.

Кириллица в BAT файле

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

Мы уже затрагивали кодировки, когда рассматривали единицы измерения объема информации. Суть проблемы заключается в том, что в командная строка использует кодировку DOS (codepage 866), а в самой операционной системе используется кодировка Windows (codepage 1251). Поэтому, когда вы запускаете такой батник, консоль не может правильно понять русские буквы и выдает ошибку. Это все равно, что если вы бы получили письмо на китайском языке. Это касается не только русского языка, но и любого другого, где используются не латинские символы.

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

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

Вообще возможности Notepad.exe очень ограниченны и если вы собираетесь серьезно заняться программированием на любом языке или вам мало возможности просто набрать несколько строчек текста, то рекомендуем обратить внимание на альтернативные текстовые редакторы, например Notepad++ или AkelPad.

В качестве примера рассмотрим сохранение файла в кодировке DOS с помощью Notepad++. Переходите в меню программы по пути «Кодировки» ⇒ «Кодировки» ⇒ «Кириллица» ⇒ «OEM 866», как на изображении ниже.

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

Источник

Пакетные файлы (bat, батники) Windows

Содержание статьи:

Вместо вступления. Что такое «батник»

Для удобства написания и, естественно, восприятия разобью статью по разделам. Но сначала:

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Некоторые манипуляции с пакетными файлами могут нанести вред системе (порой даже непоправимый), поэтому предупреждаю сразу, ни автор статьи, ни администрация сайта не несут абсолютно никакой ответственности за последствия, которые может повлечь за собой выполнение действий, представленных в этой статье. Все материалы представлены здесь исключительно с образовательной целью, и для ознакомления. Надеюсь на ваше понимание и прямоту ваших рук.

Часть первая. Основные моменты при создании bat-файлов

Часть вторая. Синтаксис при написании bat-файлов

Приступим.

Часть третья. Резервное копирование при помощи батников

Автоматическое копирование каталогов в папку backup

Для копирования каких-либо данных используется команда copy (копирование файла/файлов) или xcopy (копирование каталогов). Т.е., допустим, нам необходимо делать бэкап содержимого папки, в которой находятся ваши данные к дипломной работе (материалы, приложения, черновик самой работы и т.д.).
В этом случае текст будет следующим

Читайте также:  биоревитализация что это такое в косметологии лица и шеи

del удаляет ранее созданную вторую рк.
rmdir переименовывает первую рк во вторую.
xcopy создаёт новую рк.
Атрибут /s применяет команду ко всем подкаталогам, атрибут /q отключает запрос на подтверждение действий.Если в двух копиях смысла нет, можно сделать так, чтобы заменялись только те файлы, которые были изменены, те же, которые не изменились, либо вообще были удалены из исходной папки, затронуты не будут. Для этого пишем следующее

Создание бэкапа в архиве

Архив папки D:\diplom будет создаваться в E:\backup, именем будет дата и время создания архива, т.е., например 16-Aug-12–14-06-53

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

Как создать папку из батника

Начнём с самого простого. Создание папки. Папка создаётся командой MD
Чтобы создать папку с именем backup в корне диска D:\, нам необходимо собрать следующего вида пакетный файл

Если же, допустим, нужна каждый день новая папочка с датой на месте имени, то батник будет иметь вид

Здесь строчкой set datetemp=%date:

-10% мы создаём переменную datatemp на время работы батника и присваиваем ей 10 символов значения системной даты;

Как создать текстовый файл из батника

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

Также, как и в примере с папкой, можно сделать именем текущую дату

Автоматическая очистка папки из батника

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

Строчкой cd «C:\Windows\Temp\» мы переходим в папку temp
Строкой echo Y|del *.* удаляем содержимое этой папки (не саму папку!)

Часть пятая. Прочие возможности bat-файлов

Возможностей, на самом деле, огромное множество. Здесь для примера рассмотрим некоторые из них.

/S заставит батник показать содержимое не только каталога, но и всех подкаталогов.
c:\ поможет отобразить содержимое не того каталога, откуда запускается бат-файл, а нужного нам.
X:\file.txt сохранит конечный файл со списком содержимого в указанное нами место;

Запуск файлов из командной строки

Очень часто полезным оказывается возможность запуска объектов из командной строки (в данном случае уже из бат-файлов). Причем как программ, так и других видов файлов (графических изображений, медиафайлов, текстовых документов и т.п.)
К примеру, если в автозагрузку добавить текстовый документ, то при включении ПК после загрузки системы вы его сразу увидите. Либо откроется плеер и будет проигрывать соответствующий трек. (Подробнее про способы добавления файлов в автозагрузку вы можете прочитать в статье: Автозагрузка. Добавление приложений в автозагрузку Windows)
Для того, чтобы это реализовать, нужно просто в теле бат-файла прописать точный путь до необходимого объекта. Например

Для системных же программ нужно указать лишь её обозначение.

При выполнении этого батника откроется калькулятор. В данном случае строчку chcp 1251 можно опустить (как и в некоторых ситуациях из примеров выше), однако если уж стандартизировать все наши пакетный файлы, то её можно и оставить, вреда не будет.

Часть шестая. Хитрости или шутки в сторону

Здесь рассмотрим ещё несколько интересных возможностей для применения батников. Из названия ясно, что некоторые из действий могут навредить системе (хотя это можно сделать и «голыми руками»), но если делать всё с умом, то может выйти достаточно интересно.

Шпионские штучки. Похищаем содержимое флешки

В самом начале статьи было указанно, что команды в батниках выполняются последовательно, если это не оговорено в самом теле исполнительного файла. Рассмотрим именно этот частный случай. Нуууу, допустим. Вы знаете, что к вам придёт знакомый (а может, знакомая) с просьбой произвести какие-то манипуляции с его/её флэш-карточкой, и вам очень хотелось бы слить все данные с этого накопителя на ваш ПК. Но делать это при госте не совсем удобно, да и просто можно получить «красную карточку». Что мы в таком случае делаем? Создаём батник следующего содержания

Создаём на этот бат-файл ярлычок, в свойствах ярлыка указываем, чтобы файл запускался в свёрнутом состоянии. Дважды кликаем по ярлыку. Что имеем.
:test обозначает начало действия батника
if exist g:\ goto go проверяет наличие в компьютере диска G:\, если он есть, то переходим к части :go (суть в том, что обычно вставленная флешка получает для обозначения первую свободную в системе букву латинского алфавита, проследить это на своём компе не так уж сложно. Вот именно эту буковку мы и указываем вместо G:\)
goto test если диск G:\ не был найден, возвращаемся к началу части :test
:go обозначает начало действия второй части батника
xcopy «G:\*.*» «C:\упс\*.*» копирует всё содержимое диска G:\ в папку упс на диске C:\
Т.е. после того, как мы запустили файл с ярлыка, он запускается в свёрнутом состоянии и циклически проверяет наличие флешки в ПК. Как только флешка там засветится, начнётся копирование всех данных с неё в указанную папку, причем привычного окна копирования файлов не выскочит, всё будет отображаться в свёрнутом окне терминала.Ну, всё что было описанно выше, полезно на своём компе, однако есть несколько плюшек, с помощью которых можно подшутить над другом/подругой.

Читайте также:  Что такое манипулятивная система общения

Маленький вирус в автозагрузку

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

Первая строка добавляет файл в автозагрузку для всех пользователей на Windows XP (для конкретного пользователя в качестве пути указываем %USERPROFILE%\»Главное меню»\Программы\Автозагрузка\)
Вторая строка добавляет файл в автозагрузку для Windows 7.

Начало обеих строк в виде copy %0 означает копирование «самого себя».
Это сделали. Ещё нам хотелось бы, чтобы после запуска батника и при каждой загрузке ПК появлялась весёленькая надпись, к примеру, «ТЫ ЛАМЕР!»
Для этого добавляем следующее

Эта часть основанна на скриптах. Подробно расписывать не буду, кому интересно, найдёт материал в сети. Скажу лишь, что для некоторых ОС вид этого блока может слегка отличаться. Так, например, в семёрке (Win7) скрипт может выглядеть следующим образом

Однако, и первый вариант будет работать.

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

Едем дальше, ближе к вкусностям.
Чтобы наш объект экспериментов растерялся ещё больше, в тело батника по желанию добавляем что-нибудь из следующего:

Команда rundll32 keyboard, disable отключит клавиатуру вплоть до следующей перезагрузки, а rundll32 mouse, disable то же самое проделает с мышью. Если батник в автозагрузке, то при рестарте это дело, разумеется, повторится.

Ну и del «%SystemRoot%Cursors*.*» >nul удалит курсоры мыши ( пользоваться с осторожностью и в самых крайних случаях! )

Теперь остаётся только скомпоновать желаемые строки в единый код

Часть седьмая. Упаковка исполнительного файла

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

Программный способ упаковки батников

Упаковка батников в SFX-архив

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

Вместо заключения

Будьте осторожны и удачных вам экспериментов

Источник

Язык интерпретатора Cmd.exe. Командные файлы

Язык интерпретатора Cmd.exe. Командные файлы

Язык оболочки командной строки ( shell language ) в Windows реализован в виде командных (или пакетных) файлов. Командный файл в Windows — это обычный текстовый файл с расширением bat или cmd, в котором записаны допустимые команды операционной системы (как внешние, так и внутренние), а также некоторые дополнительные инструкции и ключевые слова, придающие командным файлам некоторое сходство с алгоритмическими языками программирования. Например, если записать в файл deltmp.bat следующие команды:

Вывод сообщений и дублирование команд

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

Таким образом, если поставить в самое начало файла команду

то это решит все проблемы с дублированием команд.

В пакетном файле можно выводить на экран строки с сообщениями. Делается это с помощью команды

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

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

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

Если запустить его из командной строки с двумя параметрами, например

то на экран выведется сообщение

и произойдет копирование каталога C:\Programs со всеми его подкаталогами в D:\Backup.

Рассмотрим пример. Пусть командный файл my.bat вызван из командной строки следующим образом:

Например, в следующей команде:

В командных файлах имеются некоторые возможности синтаксического анализа заменяемых параметров. Для параметра с номером n (%n) допустимы синтаксические конструкции (операторы), представленные в табл. 3.1.

Fn Переменная %n расширяется до полного имени файла %

Dn Из переменной %n выделяется только имя диска %

Pn Из переменной %n выделяется только путь к файлу %

Nn Из переменной %n выделяется только имя файла %

Xn Из переменной %n выделяется расширение имени файла %

Sn Значение операторов N и X для переменной %n изменяется так, что они работают с кратким именем файла %

Данные синтаксические конструкции можно объединять друг с другом, например:

DPn — из переменной %n выделяется имя диска и путь,

NXn — из переменной %n выделяется имя файла и расширение.

Рассмотрим следующий пример. Пусть мы находимся в каталоге C:\TEXT и запускаем пакетный файл с параметром Рассказ.doc ( %1=Рассказ.doc ). Тогда применение операторов, описанных в табл. 3.1, к параметру %1 даст следующие результаты:

Источник

Создаём комадный файл в Windows 10 – сборка и запуск

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

Читайте также:  какие товары надо сертифицировать вайлдберриз

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

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

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

Как создать пакетный файл в Windows 10

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

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

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

Чтобы создать простой пакетный файл в Windows 10, выполните следующие действия:

Приведенный выше скрипт выводит фразу «Поздравляем! Ваш первый пакетный файл успешно выполнен» на экране терминала.

Хотя пакетные файлы обычно используют расширения файлов .bat, вы также можете увидеть сценарии, использующие расширения файлов .cmd или .btm

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

Создание расширенного пакетного файла

Чтобы создать расширенный пакетный файл, который выполняет несколько команд, используйте эти шаги:

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

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

Создание действующего командного файла

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

Чтобы создать пакетный файл, который запускает определенную команду без взаимодействия с пользователем, выполните следующие действия:

Команда «pause» не требуется, она была добавлена в этом примере, чтобы сделать снимок экрана. Если вы получаете доступ к файлам с другого компьютера, который использует определенное имя пользователя и пароль, не забудьте использовать опцию /user: с необходимыми учетными данными.

Приведенная выше команда является известной командой, которая отображает сетевую папку как диск внутри проводника, используя букву «Z».

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

Как запустить командный файл в Windows 10

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

Запуск пакетного файла по требованию

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

Проводник

Чтобы запустить пакетный файл с помощью проводника, выполните следующие действия:

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

Командная строка

Чтобы запустить командный файл из командной строки, выполните следующие действия:

Например, следующая команда запускает пакетный файл, расположенный в пользовательской папке «batch» внутри папки «Downloads»:

После того, как вы выполните эти шаги, выходные данные будут отображаться на экране, даже если скрипт содержит команду «PAUSE».

Запуск пакетного файла по расписанию

Чтобы запланировать запуск пакетного файла в Windows 10, вы можете использовать планировщик задач, выполнив следующие действия:

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

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

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

Запуск пакетных файлов при запуске

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

Чтобы запустить скрипт при запуске, используйте следующие простые шаги:

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

Мы ориентируем это руководство на Windows 10, но возможность использовать пакетные файлы существует давно, а это означает, что вы можете обратиться к этим инструкциям, если вы всё ещё используете более старую версию, включая Windows 8.1 или Windows 7.

Источник

Информ портал о технике и не только