Является ли bat расширением исполняемого файла в windows

Обновлено: 04.07.2024

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

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

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

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

  • Выше уже упоминалось, что пакетный файлы - это обычные текстовые документы. Так и есть, но для того, чтобы они работали и выполняли свои функции, им нужно придать подобающий вид, т.е. поменять расширение. Вообще в Windows используется как расширение *.bat, так и *.cmd, по сути они отличаются весьма незначительно лишь некоторыми нюансами, поэтому, в целях избежания путаницы, будем говорить о bat-файлах. Т.е. чтобы создать исполняемый пакетный файл, мы открываем стандартный блокнот (либо другой, привычный вам текстовый редактор), вбиваем туда нужные нам команды и сохраняем файл с любым именем и расширением bat;
  • По сути, перечень команд, описанных в пакетном файле (батнике) может быть воспроизведён вручную в командной строке (пуск - все программы - стандартные - командная строка), упаковываем их (команды) мы исключительно для удобства, простоты и моментальности (если позволите) воспроизведения;
  • Если испытываете что-то серьёзное и не уверенны в своих действиях, лучше испытывайте детище к примеру на виртуальной машине (в крайнем случае - на компьютере соседа);
  • Список возможных к использованию команд очень велик, посмотреть его можно, набрав в командной строке help, здесь же будут расшифровываться команды по мере их появления в создаваемых батниках;
  • Все инструкции, приведённые в статье, тестировались на ОС Windows XP и Windows 7.

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

  • Каждая команда вводится с новой строчки;
  • Все команды выполняются последовательно за исключением тех случаев, когда внутри самого батника присутствует переход к определённой его части;
  • Комментарии в пакетный файл могут быть добавлены двумя способами:
    - либо после двух двоеточий ::переход к части копирования - либо при помощи команды goto, т.е. вводится команда goto, потом место для перехода, а между ними сам комментарий
  • Если команду необходимо ввести с атрибутом, то сначала вводим команду, затем пробел, слэш и, собственно, сам ключ copy /Y Чтобы посмотреть список возможных атрибутов к конкретной команде, нужно в командной строке ввести команду, затем пробел, слэш и знак вопроса dir /?
  • Для скрытия окна терминала выполняемой команды можно в начале строки поставить знак собачки @, если же требуется скрыть отображение выполнения всех команд, то проще (чтобы не ставить собачку в каждой строчке) в начале батника указать @echo off здесь команда echo off скрывает окна, а собачка впереди неё запрещает отображение выполнения самой echo off
  • Все директории внутри команд, для исключения возможных ошибок, будем вводить в кавычках;
  • По умолчанию при работе с кириллическим текстом на выходе вы можете получить иероглифы, при работе с папками/файлами, имеющими русские имена, вообще может ничего не получиться, это происходит из-за используемых кодировок, поэтому для исключения подобных неприятностей в начале пакетного файла будем указывать кодировку, корректно работающую с кириллицей следующей командой chcp 1251
  • Есть команды (например, удаление файлов, форматирование), которые могут потребовать подтверждения действий. Порой это бывает очень нежелательно, в таком случае, можно вписать ответ заранее в сам пакетный файл. Ответ записывается ДО! команды и отделяется от неё вертикальной чертой |Y|del
  • В командной строке (а значит и в пакетных файлах) при указании директории иногда бывает удобнее пользоваться переменными, нежели прописывать весь путь cd %APPDATA%

Приступим.

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

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

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

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

Где D:\diplom\ - папка расположения всех материалов к диплому, а E:\backup\diplom\ - конечная директория резервной копии.
Создаём батник, кидаем его в автозагрузку (пуск - все программы - автозагрузка), и при каждом включении компьютера будет создаваться резервная копия (рк).Чуть усложним. Сделаем, чтобы при включении ПК старые данные сохранялись в папочке diplom_old, а новые в папочке diplom. Тогда батник будет иметь вид

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-файлов

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

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

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

/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) скрипт может выглядеть следующим образом

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

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

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

%SystemRoot%/system32/rundll32 user32, SwapMouseButton >nul - строка меняет кнопки мыши местами. Весьма забавная штуковина, однако если человечек не отличается уровновешенной психикой, от этого советую отказаться. Чтобы поменять кнопки мыши обратно, заходи в панели управления в пункт мышь и там инвертируем галочку в поле обменять назначение кнопок.

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

rundll32 shell32, SHExitWindowsEx 1 - выключит ПК.

rundll32 shell32, SHExitWindowsEx 2 - перезагрузит ПК.

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

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

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

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

    • конвертировать bat-файл в *.exe при помощи какой-нибудь утилитки (например, bat to exe)
    • создать sfx-архив.

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

    Второй вариант в рамках данной статьи чуток подробнее и рассмотрим.
    - Для начала нам надо установить на ПК подходящий архиватор (для этих целей я рекомендую WinRAR, т.к. создание sfx-архивов в нём реализовано наиболее удобно и просто).
    - Создаём нужный нам пакетный файл (батник).
    - Кликаем правой кнопочкой по батнику, выбираем из контекстного меню WinRAR => Добавить в архив (дальше по вкладкам)
    - Общие. Имя любое. Формат - RAR. Метод сжатия обычный. В параметрах архивации ставим галочку напротив Создать SFX-архив.
    - Дополнительно. Жмём на кнопочку Параметры SFX. Вкладочка "Общие", выполнить после распаковки - вписываем имя архивируемого батника с расширением. Во вкладке "Режимы" в разделе "Режим вывода информации" ставим галочку напротив "Скрыть всё". На вкладочке "Текст и графика" можно, например, добавить симпатичную иконку вашему архиву вместо стандартной. Если вы не художник, то иконку можно вытащить из любой программы/игры при помощи стороннего софта, например Restorator.
    - На этом всё. Остальные опции на ваше усмотрение. Жмём кнопочку ОК. В исходной папке с батником появится ещё и наш новый sfx-архив.
    - Чтобы добавить солидность файлу, позволить ему прибавить в весе, можно в архив "напихать" ещё что-нибудь, это может быть что угодно, т.к. цель - только увеличение размера.
    - В архиве может быть сколько угодно батников, при создании архива мы указываем, что выполнять нужно первый (прописываем его имя с расширением), чтобы после этого выполнился следующий, в конце (либо в нужном нам месте) пишем

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

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

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

    Материал по теме «Командные файлы»

    1. Определение командного файла. Командные (пакетные) файлы - особая категория исполняемых файлов.

    Расширение: *.bat (от англ. batch - "пакет", "группа"). Запуск командного файла осуществляется так же, как запуск исполняемой программы, то есть, указывается имя файла и, если требуется, параметры.

    Назначение: BAT-файлы служат для организации взаимодействия пользователей с прикладными программами.

    Состав: текст , который интерпретируется командным процессором. Строки этого текста могут представлять собой:

    Каждая команда находится на отдельной строке.

    2. Команды пакетной обработки.

    а) REM комментарий в тексте файла. Обычно используют, чтобы временно убрать из текста какую-либо команду. Формат: REM [любая строка]

    echo. Перейти к следующей строке;

    в) @. Может быть только первым символом строки и подавляет ее выдачу на экран. Используется только в пакетном режиме. Пример:

    @echo off Выключаем "эхо"; из-за символа @ сама команда echo off тоже не выводится на экран; этой строкой обычно начинаются командные файлы.

    д) IF позволяет проверять условие и выполнять ветвление в зависимости от результата проверки.

    Общий вид команды : IF [NOT] [условие] [действие], где "действие" - любая команда, выполняемая, если истинно условие. Условие записывается в одной из трех форм, поэтому команда IF имеет три формата.

    Формат 1 . Проверка кода завершения последней перед оператором IF команды. Используется конструкция следующего вида: IF ERRORLEVEL число

    Любая программа может выработать в момент своего окончания собственный код завершения, который доступен другим программам через переменную с именем ERRORLEVEL. Большинство команд и программ при нормальном завершении устанавливают errorlevel=0. Задав условие if errorlevel 1, Вы определите, что оно будет выполнено, если программа вырабатывает код завершения больший, либо равный 1.

    Формат 2 . Проверка наличия файла в каталоге. Оператор IF имеет вид: IF EXIST имя файла

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

    Формат 3 . Сравнение двух строк. Оператор имеет вид: IF [строка_1]==[строка_2]

    Условие выполняется, если строки 1 и 2 совпадают. Чтобы застраховаться от случая, когда одна из строк оказывается пустой, обе строки заключают в одинаковые символы, например, в квадратные скобки.

    Любое из этих трех условий может задаваться со знаком логического отрицания NOT. При этом истинность условия трактуется в обратном смысле. Примеры :

    if exist c:\autoexec.bat type c:\autoexec.bat

    если в головном каталоге диска c: есть файл autoexec.bat, вывести его на экран;

    if not exist c:\WORK\*.* echo Нет файлов!

    if errorlevel 1 echo Форматирование прошло не безупречно!

    если программа format установила errorlevel больше нуля,сообщить об ошибке;

    если переменная с именем A равна строке 'Yes', очистить экран.

    Аналогично команда IF может использоваться из командной строки.

    е) GOTO позволяет передавать управление на заданную метку Формат команды: GOTO метка

    Метка начинается со знака : Пример :

    if %A%==Yes goto Clear

    Если переменная A совпадает со строкой Yes, перейти на метку Clear и очистить экран. В противном случае пропустить очистку экрана.

    ж) CALL осуществляет вызов одного командного файла из другого с последующим возвратом в вызывающий файл. Формат команды: CALL [имя файла]

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

    Вызывающий командный файл: (example.bat)

    echo Файл запущен!

    Вызываемый командный файл: (version.bat)

    echo Ваша версия операционной системы:

    example.bat вызывает version.bat, после выполнения которого вновь получает управление.

    з) Переменные в командных файлах используются для обмена информацией между отдельными командами. Существуют два их вида:

    1) переменная, определяемая в цикле. Ее имя состоит символа процента (в старых версиях DOS/Windows - двух символов) и последующих букв, например, %A. Набор значений, которые последовательно принимает такая переменная, задается при ее определении в команде for (см. ниже).

    2) переменная окружения. Она определяется внутренней командой DOS вида

    переменной с именем weekday присваивают значение sunday и выводят ее значение на экран командой ECHO. Для удаления переменной из окружения используют строку вида set имя=

    Для просмотра окружения можно использовать команду SET без параметров.

    В DOS и Windows, как правило, используются следующие стандартные переменные окружения:

    • winbootdir Главный каталог ОС Windows (в версиях NT/2000 может называться SystemRoot)
    • COMSPEC Полное имя текущего командного процессора
    • PROMPT Вид строки приглашения диалогового режима
    • TEMP Каталог для временных файлов (иcпользуется также TMP)
    • PATH Список путей, по которым ищутся исполняемые программы, если путь не указан при запуске программы. По умолчанию программа ищется сначала в текущей папке, затем в папках, перечисленных в PATH. Пути разделяются символом ;

    и) FOR обеспечивает циклическое выполнение команд. Формат: FOR переменная IN (набор) DO действие

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

    For %a in (*.txt) do copy %a con

    Переменной %%a последовательно присваиваются имена файлов с расширением txt из текущего каталога и каждый файл выводится на экран.

    for %r in (*.*) do if exist a:\%r echo %r есть на диске a:

    for %z in (0,1,2,3,4,5,6,7,8,9) do if %z==%test% echo z=test=%z

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

    FOR %A IN (*.txt) DO TYPE %A

    Все найденные в текущей директории файлы с расширением TXT последовательно выводятся на экран.

    к) Параметры командного файла. При запуске из командной строки командному файлу могут быть переданы параметры. Они разделяются пробелами и количество их не может превышать девяти. Изнутри пакетного файла параметры доступны через строки вида %0, %1, . %9, где %0 - имя самого командного файла, %1 - имя первого параметра и так далее. Например, мы запускаем командный файл MOVA.BAT командой mova.bat *.tmp *.txt *.doc

    После запуска параметр %0 равен строке "mova.bat", параметр %1 - строке "*.tmp" и т. д. Наш командный файл должен перемещать файлы, подходящие под переданные ему маски, на диск a:. Для первого параметра это легко сделать двумя командами: copy %1 a:\%1 и del %1. Первая копирует файлы на диск a:, вторая уничтожает источник копирования. Для второго параметра мы могли бы повторить те же команды, подставив в них %2 вместо %1. Но программа сразу же становится нерациональной, тем более, что число параметров заранее неизвестно. Помочь нам может команда SHIFT, которая сдвигает параметры командного файла на один влево. После применения SHIFT параметру %0 присваивается старое значение %1, в нашем случае это строка "*.tmp", а параметр %1 принимает значение "*.txt". Теперь этими же двумя командами мы можем обработать любое число параметров. Позаботившись об условии выхода из программы, получаем ее окончательный текст:

    if not [%1]==[] goto LOOP

    Благодаря команде SHIFT мы каждый раз обращаемся лишь к первому из переданных параметров и правильность работы не зависит от числа переданных параметров. Если очередная строка с маской не пуста, оператор goto LOOP передает управление к началу программы.

    л) Дополнительные средства для написания командных файлов.

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

    В состав большинства версий DOS/Windows включена внешняя команда choice, служащая для выбора действия. Формат команды:

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

    choice /c:01 /n /t:0,5 Продолжить?(1-да,0-нет)

    значение ERRORLEVEL будет установлено в 1 при нажатии клавиши 0 или отсутствии ввода с клавиатуры в течении 5 секунд, а при нажатии клавиши 1 программа установит значение ERRORLEVEL, равное 2.


    Вы хотите продлить жизнь своего компьютера? Тогда для экономии системных ресурсов создавайте различные полезные программы и утилиты. Запустить их вы можете при помощи только одного командного файла.

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

    Что такое bat-файл? Для чего он нужен

    Bat файл – это текстовый файл с определённым набором символов, которые вводятся в командную строку. Запустив всего один файл, пользователь экономит время на выполнение большого количества действий. Такие файлы применяются для автоматизации часто повторяющих действий пользователя. Файл с расширением .bat называется пакетным (командным). На сленге пользователей он называется «батник».

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

      Удаление пустых папок и подпапок на компьютере с места запуска файла — for /f «usebackq delims=» %%d in (`«dir /ad/b/s | sort /R»`) do rd "%%d"
    Помните! При наличии в папке скрытых файлов с расширениями .db или .ini удаление папки невозможно.

    Как открыть файл с расширением bat

    • echo %1
    • echo %2
    • echo %3
    • pause

    Как создать bat-файл в Windows? Последовательность действий

    Наиболее простой способ создания bat файла – использование программы Блокнот (NotePad). После активации программы из панели «Стандартные» или при помощи команды C:\Windows\notepad.exe на страницу блокнота вносится или копируется код.

    В блокноте NotePad файл должен храниться с расширением .bat. Необходимо тщательно проконтролировать, чтобы сохраняемый файл имел тип «Все файлы».

    Можно ли изменять bat-файл

    Для изменения различных параметров файлы с расширением .bat можно редактировать. Этого можно достичь несколькими способами.
    Первый. Открыть контекстное меню и выбрать команду Изменить. Необходимые правки вносятся в файл в любом текстовом редакторе, установленном на компьютер.

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

    Третий. Зайти в Блокнот, в меню «Файл» найти искомую папку с пакетным файлом.

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

    Бат файлы.

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

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

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

    Бат файлы.

    Работа с файлами .BAT может быть очень опасна не только для ваших личных файлов, но и для важных системных файлов. Будьте предельно осторожны перед открытием.

    Как открыть файл .BAT

    Хотя расширение .BAT немедленно заставляет Windows распознавать такой файл как исполняемый, файлы .BAT по-прежнему полностью состоят из текстовых команд. Это означает, что любой текстовый редактор, например Блокнот (который входит во все версии Windows), может открыть файл .BAT для редактирования.

    Чтобы открыть файл .BAT в Блокноте, щелкните его правой кнопкой мыши и выберите « Редактировать» в меню. Вы можете найти более продвинутые текстовые редакторы, которые поддерживают подсветку синтаксиса , полезную при редактировании файла .BAT.

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

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

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

    Использование файла .BAT в Windows так же просто, как двойной щелчок или двойное касание. Вам не нужно загружать какую-либо специальную программу или инструмент.

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

    Второй пример, в котором используется команда ping , пропингует этот IP-адрес; Команда pause сохраняет окно командной строки открытым после завершения процесса, чтобы вы могли видеть результаты.

    Если ваш файл не является текстовым файлом, то, вероятно, вы не имеете дело с файлом .BAT. Проверьте расширение файла, чтобы убедиться, что вы не путаете файл .BAK или .BAR (данные Age of Empires 3 ) с файлом .BAT.

    Как конвертировать .BAT файл

    Как показано, код файла .BAT никоим образом не скрыт, что означает, что его очень легко редактировать. Поскольку некоторые инструкции в файле .BAT (например, команда del ) могут нанести ущерб вашим данным, преобразование файла BAT в формат, такой как EXE, может сделать его более похожим на файл приложения.

    Вы можете преобразовать файл .BAT в файл .EXE, используя несколько инструментов командной строки . Вы можете прочитать, как это сделать, в How-To Geek .

    • Встроенный в Windows инструмент IExpress предоставляет другой способ создания .EXE-файла из .BAT-файла.
    • Хотя бесплатная версия является пробной, EXE в MSI Converter Pro может преобразовать полученный файл EXE в файл MSI (пакет установщика Windows).
    • Вы можете использовать бесплатный инструмент командной строки NSSM, если хотите запустить файл .BAT в качестве службы Windows. может помочь вам преобразовать код в файле .BAT в сценарий PowerShell.

    Вместо того чтобы искать конвертер .BAT в SH (скрипт оболочки bash) для использования команд .BAT в таких программах, как Bourne Shell и Korn Shell, попробуйте просто переписать скрипт с использованием языка Bash. Структура этих двух форматов довольно различна, поскольку файлы используются в разных операционных системах. Существует поток переполнения стека и это руководство по написанию сценариев оболочки Unix для некоторой информации, которая может помочь вам перевести команды вручную.

    Обычно вы не можете изменить расширение файла (например, .BAT) на то, которое ваш компьютер распознает и ожидает, что вновь переименованный файл будет пригоден для использования. Фактическое преобразование формата файла с использованием одного из методов, описанных выше, должно иметь место в большинстве случаев. Учитывая, что файлы .BAT — это просто текстовые файлы с расширением .BAT, вы можете переименовать его в .TXT, чтобы открыть его в текстовом редакторе . Помните, что преобразование .BAT в .TXT предотвратит выполнение командным файлом своих команд.

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

    Это также то, что вам нужно сделать при создании нового файла .BAT в Блокноте , но в обратном порядке: сохраните текстовый документ по умолчанию как .BAT вместо .TXT. В некоторых программах вам, возможно, придется сохранить его в типе файла « Все файлы », а затем самостоятельно добавить расширение .BAT.

    Читайте также: