Команды bat-файлов (Windows). Команды bat-файлов. Как создать bat-файл? Базовые команды

В данной статейки мы рассмотрим такую полезную вещь как «батник ». Давайте сначала дадим определение, что такое bat файл. Пакетные или batch файлы - это простые текстовые файлы, содержащие наборы команд (инструкцию ) интерпретатора и имеющие расширение bat или cmd (cmd работают только в ОС семейства NT ). Создавать и редактировать такие файлы можно при помощи обычного блокнота или любого другого текстового редактора.

Теперь Вы спросите, зачем нужно уметь писать такие бат файлы? И зачем они нужны? Попытаюсь объяснить.

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

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

Теперь перейдем непосредственно к основам этих батников. Как же они создаются, Вам нужно просто создать простой текстовый документ открыть его и сразу на вкладке «Файл->сохранить как », вписать вместо расширения «Текстовый документ.txt », например «Текстовый документ.bat » и сохранить, вот и получится у нас батник с расширением.bat, но он пока ничего не делает.

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

"C:\Program Files\WinRAR\winrar.exe" a -r -dh -ed -agYYYY-mm-dd E:\arhaccounts\ d:\accounts\*.doc "C:\Program Files\WinRAR\winrar.exe" a -r -dh -ed -agYYYY-mm-dd E:\arhaccounts\ d:\accounts\*.xls "C:\Program Files\WinRAR\winrar.exe" a -r -dh -ed -agYYYY-mm-dd E:\arhaccounts\ d:\accounts\*.txt

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

  • a - это добавить в архив;
  • -r - обрабатывать вложенные папки;
  • -dh - открывать совместно используемые файлы;
  • -ed - не добавлять пустые папки;
  • YYYY-mm-dd - добавляем к имени архива текущую дату (формат даты );
  • E:\arhaccounts\ - путь, где будет лежать конечный архив;
  • d:\accounts\*.doc - путь и маска файлов, какие нужно заархивировать.

В данном случае мы архивируем все документы Word, Excel и текстовые файлы, архивировать остальные нам не требуется. У нас архивация идет на другой диск, и мы еще копируем полученный архив на другой компьютер, для того чтобы архивы хранились и в другом кабинете. Копирование идет по сети соответственно компьютер, на который копируется архив, должен быть включен. Для этого можно использовать такую команду:

Copy E:\arhaccounts\*.rar \\namecomp\arhiv\

Примеры команд для bat файлов

Теперь рассмотрим основные команды, которые Вы можете использовать.

Если Вам нужно удалить файл пропишите следующие:

Del d:\file\test.doc


Для того чтобы удалить весь каталог пропишите:

Rd d:\file\

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

Echo Y| del d:\file\

  • del d:\file\ - это как раз и есть удаление всех файлов;
  • echo Y| - команда подтверждает удаление т.к. если не прописать эту команду, то Вы увидите сообщение о подтверждение удаления – «Продолжить », и Вам нужно будет каждый раз отвечать на этот вопрос.

Сейчас давайте рассмотрим пример посложней, в котором уже выполняется условие:

@echo off "C:\Program Files\WinRAR\winrar.exe" x -O+ -IBCK d:\test\test.rar d:\test IF not EXIST d:\test\123.rar GOTO 1 IF EXIST d:\test\123.rar GOTO 2:2 "C:\Program Files\WinRAR\winrar.exe" x -O+ -IBCK d:\test\123.rar c:\ del d:\test\123.rar:1 del d:\test\test.rar end

Теперь объясняю, допустим, Вам нужно разархивировать архив test.rar, в котором будет много файлов, но если там окажется файл 123.rar его нужно будет разархивировать в корень диска C, а остальные файлы чтобы остались в том же каталоге не тронутыми.

По порядку, команда @echo off нужна, для того чтобы на экране у нас ничего не отражалось (в принципе, если не нужно можете не писать эту строку ). Далее у нас запускается винрар и распаковывает архив test.rar в папку test. Затем идет условие, если в папке test (после распаковки test.rar ) у нас не окажется файла 123.rar, то у нас просто выполнение батника переходит к строке:1 и потом просто удаляется файл test.rar за не надобностью т.к. все что нам нужно мы уже распаковали. Но если там оказывается файл 123.rar, то выполнение батника переходит к строке:2, после которой уже идет распаковка файла 123.rar в корень диска C. Другими словами у нас выполняется условие, если есть файл то делать это, если нет файла, делать вот это. Допустим, если не прописать условие в данном примере, то у нас батник выдаст ошибку, тогда когда у нас не окажется файла 123.rar в данной папке.

А сейчас рассмотрим такой пример, допустим, Вам нужно каждый раз перемещать из каталога расположенного на диске D файлы на флешку. Вы каждый раз должны будете заходить мой компьютер диск D, выбирать нужную папку, выделять все файлы из нее и вырезать, а потом только заходить на флешку и вставлять. С помощью батника это делается в один клик (с одним условием, что флешка каждый раз будет, например диском G или тем какой у Вас ). Вот пример такого батника:

Move "D:\catalog\*.doc" G:\catalognaflehe\

И все файлы с расширением doc, которые находятся в каталоге D:\catalog будут перемещаться на флешку. Теперь хочу сказать, что в батниках можно использовать сценарии (скрипты ) при помощи Windows Scripting Host и если нужно, например чтобы выводилось сообщение, после того как файлы скопированы (предыдущий пример ) вставьте вот это:

Echo var WSHShell = WScript.CreateObject("WScript.Shell"); > %temp%\mes.js echo WSHShell.Popup("Файлы Скопированы"); >> %temp%\mes.js start %temp%\mes.js deltree /y %temp%\mes.js

На самом деле про написание батников можно разговаривать много и в одну статью это, конечно же, не уместить, здесь я показал всего лишь принципы, которые используются при написании bat файлов, так сказать основу. Если Вы хотите узнать больше команд для написания батников, Вы можете легко посмотреть их, набрав в командной строке (Пуск - Выполнить – cmd ) команду help, но там, конечно же, не все команды, что можно использовать в батниках. Удачи в написание BAT файлов (батников ).

Продолжение темы в статье -

Bat-файлы Windows являются удобным способом выполнения различных задач на ПК, которым активно пользуются компьютерные умельцы. Они позволяют автоматизировать повседневные задачи, сократить время их выполнения и превратить сложный процесс во что-то посильное рядовому пользователю. В данной статье представлены базовые возможности командных файлов и рекомендации по самостоятельному их написанию.

Автоматизация - это просто

Как создать bat-файл? Для этого нужно выполнить следующие действия:

  1. В любом текстовом редакторе, например, в Notepad или WordPad, создать текстовый документ.
  2. Записать в нем свои команды, начиная с @echo , а затем (каждый раз в новой строке) - title [название пакетного скрипта], echo [сообщение, которое будет выведено на экран] и pause.
  3. Сохранить текст в электронном документе с расширением.bat (например, test.bat).
  4. Для запуска следует дважды щелкнуть по только что созданному пакетному файлу.
  5. Чтобы его отредактировать, необходимо кликнуть на нем правой кнопкой мыши и из контекстного меню выбрать пункт «Изменить».

Необработанный файл будет выглядеть примерно так:

title Это ваш первый скрипт bat-файла!

echo Добро пожаловать в сценарий пакетной обработки!

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

Шаг 1: создание программного скрипта

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

Создание нового текстового документа

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

Добавление кода

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

Сохранение

Вышеупомянутый скрипт выводит на экран текст «Добро пожаловать в сценарий пакетной обработки!». Электронный документ необходимо записать, выбрав пункт меню текстового редактора «Файл», «Сохранить как», а затем указать желаемое имя bat-файла. Его следует завершить расширением.bat (например, welcome.bat) и нажать «ОК». Для правильного отображения кириллицы в некоторых случаях следует удостовериться в правильном выборе кодировки. Например, при использовании консоли русифицированной системы Windows NT документ необходимо сохранить в CP866. Теперь следует дважды щелкнуть на ярлыке bat-файла, чтобы активировать его.

Но экране появится надпись:

"Добро пожаловать в сценарий пакетной обработки! Для продолжения нажмите любую клавишу..."

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

"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.BAT\UserChoice".

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

Шаг 2: знакомство с некоторыми командами

Если пользователь ПК знаком с тем, как следует выполнять команды консоли DOS, то он будет мастером создания программных скриптов, потому что это один и тот же язык. Строки в bat-файлах сообщат интерпретатору cmd.exe все, что от него требуется. Это экономит время и силы. Кроме того, есть возможность задать некоторую логику (например, простые циклы, условные предписания и т. д., которые концептуально схожи с процедурным программированием).

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

1. @echo - это команда bat-файлов, которая позволит увидеть работу скрипта в командной строке. Она используется для просмотра хода выполнения рабочего кода. Если у пакетного файла возникают какие-либо проблемы, то данная команда позволит быстро локализировать проблемы. Добавление off дает возможность быстро завершить выполнение кода, избегая вывода ненужной информации на экран.

2. Title предоставляет те же возможности, что и тег в HTML, т. е. создает заголовок для пакетного скрипта в окне командной строки.</p><p>3. Call вызывает один bat-файл из другого или подпрограмму внутри одного сценария. Например, функция power вычисляет степень %2 числа %1:</p><p>if %counter% gtr 1 (</p><p>set /a counter-=1</p><p>endlocal & set result=%prod%</p><p><img src='https://i2.wp.com/syl.ru/misc/i/ai/324915/1862019.jpg' width="100%" loading=lazy></p><p>4. Cls очищает <a href="/kak-otkryt-programmu-v-komandnoi-stroke-kak-zapuskat-programmu-iz/">командную строку</a>. Используется для того, чтобы предыдущий вывод <a href="/luchshaya-blokirovka-ekrana-dlya-android-blokirovka-ekrana-na-android-kak/">постороннего кода</a> на помешал просмотру хода выполнения текущего скрипта.</p><p>5. Color задает цвет шрифта и фона. Например, <a href="/komanda-zamenit-cvet-replace-color-v-fotoshope-menyaem-cvet-obektov/">команда color</a> f9 задает белые буквы на <a href="/rgb-kod-krasnogo-cveta-zapisyvaetsya-kak-kak-izmenit-cvet-teksta-html-i-css/">синем фоне</a>. Команда без параметра восстанавливает установки по умолчанию.</p><p>6. Echo служит для вывода информации, а также включения (echo on) или выключения (echo off) такого вывода. Например, команда echo. выводит <a href="/1s-8-kak-operacii-so-strokoi-novye-funkcii-raboty-so-strokami/">новую строку</a> без точки, а echo . - точку. Без параметров команда выводит на экран информацию о своем текущем статусе - echo on или echo off.</p><p>7. Rem обеспечивает ту же функциональность, что и тег <! в HTML. Такая строка не является частью выполняемого кода. Вместо этого она служит для пояснения и предоставления информации о нем.</p><p>8. Pause позволяет прервать выполнение команд bat-файла. Это дает возможность прочесть выполненные строки перед продолжением программы. При этом на экран выводится сообщение «Для продолжения нажмите любую клавишу...».</p><p>9. Set позволяет просмотреть или установить переменные окружения. С ключом /p команда запрашивает у пользователя ввод и сохраняет его. С параметром /а она дает возможность выполнять простые <a href="/operacii-nad-primitivnymi-tipami-v-java-arifmeticheskie-operacii/">арифметические операции</a>, также присваивая их результат переменной. При операциях со строками не должно быть пробелов ни до, ни после знака равенства. Например, команда set выводит на дисплей список переменных окружения, set HOME - значения аргументов, начинающихся с “HOME”, а set /p input=введите целое: запрашивает ввод целого числа и присваивает его соответствующей переменной.</p><p>10. Start "" [веб-сайт] запустит заданный веб-сайт в веб-браузере, используемом по умолчанию.</p><p>11. If служит для проверки определенного условия. Если оно истинно, то выполняется следующая за ним команда. Условия бывают 3 видов:</p><ul><li>ERRORLEVEL число - проверка кода завершения последней выполненной инструкции на соответствие или превышение указанного числа. При этом 0 обозначает успешное выполнение задачи, а любое другое число, обычно положительное, сообщает об ошибке. Например, можно использовать вложенные команды для <a href="/chto-takoe-vysokochastotnye-zaprosy-srednechastotnye-zaprosy/">точного определения</a> кода завершения: if errorlevel 3 if not errorlevel 4 echo произошла ошибка №3.</li><li>Строка1 == строка2 - проверка совпадения двух строк. Например, при отсутствии <a href="/luchshie-zhestkie-diski-1-tb-kakoi-firmy-luchshe-vybrat-vneshnii/">внешнего параметра</a> команда if "%1"= ="" goto ERROR передаст управление метке ERROR.</li><li>EXIST имя - проверка существования файла с <a href="/ne-udaetsya-naiti-fail-proverte-pravilno-li-ukazano-imya-i/">указанным именем</a>. Например, if not exist A:\program.exe COPY C:\PROJECTS\program.exe A: копирует программу program.exe на диск А, если ее там нет.</li> </ul><p>12. Else должна находиться в одной строке с командой If. Указывает на необходимость выполнения <a href="/kak-perepisat-kontakty-chtoby-skopirovat-kontakty-s-telefona-na-kompyuter/">следующей инструкции</a>, если выражение окажется ложным.</p><p><img src='https://i2.wp.com/syl.ru/misc/i/ai/324915/1862021.jpg' width="100%" loading=lazy></p><p>13. For используется для повторения <a href="/polnaya-nastroika-routera-zyxel-keenetic-neobhodimo-vypolnit-opredelennye/">определенных действий</a> с каждым членом списка. Имеет формат for %%аргумент in (список) do команда. Аргументом может быть любая буква от A до Z. Список представляет собой последовательность строк, разделенных пробелами или запятыми. Подстановочные знаки также могут использоваться. Например:</p><ul><li>for %%d in (A, C, D) do DIR %%d - последовательно выводит на экран директории дисков А, С и D;</li><li>for %%f in (*.TXT *.BAT *.DOC) do TYPE %%f - печатает содержимое всех.txt-, .bat- и.doc-файлов в текущей директории;</li><li>for %%P in (%PATH%) do if exist %%P\*.BAT COPY %%P\*.BAT C:\ВАТ - копирует все пакетные файлы, которые существуют во всех каталогах маршрута поиска в папку С:\ВАТ.</li> </ul><p>14. Двоеточие (:) перед словом образует из него ссылку, которая позволяет пропускать часть <a href="/tegi-prednaznachennye-dlya-vyvoda-chastei-programmnogo-koda-html-programmnyi/">программного кода</a> или возвращаться назад. Используется с командами Call и Goto, указывая, с какого места следует продолжать выполнение bat-файла, например, при выполнении определенного условия:</p><p>15. Переменные:</p><ul><li>%%a обозначает каждый файл в папке;</li><li>%CD% - текущая директория;</li><li>%DATE% - <a href="/change-the-system-time-and-date-system-time-of-the-computer/">системная дата</a>, формат которой зависит от локализации;</li><li>%TIME% - <a href="/sbivaetsya-sistemnoe-vremya-sbivaetsya-vremya-na-kompyutere/">системное время</a> в виде ЧЧ:ММ:СС.мм.;</li><li>%RANDOM% - сгенерированное <a href="/generator-psevdosluchainyh-chisel-random-generatory-psevdosluchainyh-posledovatelnostei/">псевдослучайное число</a> в диапазоне от 0 до 32767;</li><li>%ERRORLEVEL% - код завершения, возвращаемый последней выполненной командой или bat-скриптом.</li> </ul><p>Извлечь часть строки, которая содержится в переменной, при известном ее положении и длине можно так:</p><p>%[переменная]:~[начало],[длина]%. Например, показать дату в формате ДД/ММ/ГГГГ как ГГГГ-ММ-ДД можно так: echo %DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2%.</p><p>16. (". \") - <a href="/kak-naiti-kornevuyu-papku-fleshki-gde-nahoditsya-kornevaya-papka-fleshki/">корневая папка</a>. При работе с консолью перед изменением имени файла, его удалением и т. д. необходимо направить действие команды в конкретный каталог. При использовании пакетного файла достаточно запустить его в любом нужном каталоге.</p><p>17. %цифра - принимает значения параметров, <a href="/mozhno-li-vyvesti-golosa-iz-vkontakte-peredaem-golosa-drugim/">передаваемых пользователем</a> в bat-файл. Могут разделяться пробелами, запятыми или двоеточиями. «Цифра» представляет собой число от 0 до 9. Например, %0 принимает значение текущей команды. %1 соответствует первому параметру и т. д.</p><p>18. Shift - команда, используемая для смещения <a href="/kak-ustranit-nesootvetstvie-parametrov-vhodnoi-seti-specificheskie-trebovaniya-directaccess/">входных параметров</a> на одну позицию. Применяется, когда пакетному файлу передаются внешние аргументы. Например, следующий bat-файл копирует на диск D файлы, заданные в качестве параметров в командной строке:</p><p>if not (%1)==() goto next</p><p>Кроме того, с аргументами можно производить следующие манипуляции:</p><ul><li>%~ - удалить окружающие кавычки;</li><li>%~f - расширить параметр до полного имени пути вместе с именем диска;</li><li>%~d - показать имя диска;</li><li>%~p - отобразить только путь;</li><li>%~n - выделить из параметра только имя файла;</li><li>%~x - оставить лишь расширение;</li><li>%~s - преобразовать путь в представление с короткими именами;</li><li>%~a - извлечь атрибуты файла;</li><li>%~t - вывести дату и время создания;</li><li>%~z - отобразить размер файла;</li><li>%~$PATH: - производит поиск в директориях, перечисленных в <a href="/net-prav-dlya-zapuska-trebuemogo-vida-klienta-zapusk-programmy-bez-prav/">переменной окружения</a> PATH, и расширяет параметр до первого найденного соответствующего полного имени или же выдает пустую строку в случае неудачи.</li> </ul><p><img src='https://i2.wp.com/syl.ru/misc/i/ai/324915/1862020.jpg' width="100%" loading=lazy></p><h2>Подстановочные знаки</h2><p>Многие команды принимают шаблоны имен файлов - знаков, которые позволяют установить соответствие с группой имен файлов. К подстановочным знакам относятся:</p><ul><li>* (звездочка) - обозначает любую последовательность символов;</li><li>? (знак вопроса) - заменяет один (или 0) знак, отличный от точки (.).</li> </ul><p>Например, <a href="/sortirovka-po-date-komanda-dir-spravka-po-komande-dir-i-ee/">команда dir</a> *.txt выводит список txt-файлов, а dir ???.txt - перечень <a href="/the-main-formats-for-storing-text-documents-text-formats-and-text-file-editors/">текстовых документов</a>, длина имени которых не превышает 3 букв.</p><h2>Функции</h2><p>Как и подпрограммы, они эмулируются с помощью команд call, setlocal, endlocal и меток. Следующий пример демонстрирует возможность определения переменной, в которой сохраняется результат, в строке вызова:</p><p>call:say result=world</p><p><img src='https://i0.wp.com/syl.ru/misc/i/ai/324915/1862022.jpg' width="100%" loading=lazy></p><h2>Вычисления</h2><p>В bat-файлах можно выполнять простые арифметические операции с целыми 32-битными числами и битами с помощью команды set /a. Максимальным поддерживаемым числом является 2^31-1 = 2147483647, а минимальным - -(2^31) = -2147483648. Синтаксис напоминает язык программирования Си. К <a href="/jquery-umnozhenie-chisel-arifmeticheskie-operatory-v-javascript-kodirovka/">арифметическим операторам</a> относятся: *, /, %, +, -. В bat-файле % (остаток целочисленного деления) должен вводиться как “%%”.</p><p>Операторы с <a href="/tablica-perevoda-chisel-iz-dvoichnoi-sistemy-v-vosmerichnuyu-perevod/">двоичными числами</a> интерпретируют число как 32-битную последовательность. К ним относятся: ~ (побитовое НЕ или дополнение), & (И), | (ИЛИ), ^ (исключающее ИЛИ), << (сдвиг влево), >> (сдвиг вправо). <a href="/operatory-otnosheniya-i-logicheskie-operatory-peremennye-operacii/">Логическим оператором</a> отрицания является! (восклицательный знак). Он изменяет 0 в 1 и ненулевое значение в 0. Оператором комбинирования служит, (запятая), которая позволяет производить <a href="/kak-okruglit-chislo-v-bolshuyu-storonu-kak-okruglit-chislo-v-excel/">большее число</a> операций в одной <a href="/komanda-set---rabota-s-peremennymi-sredy-windows-peremennye-sredy/">команде set</a>. Комбинированные операторы присваивания += и -= в выражениях a+=b и a-=и соответствуют выражениям a=a+b и a=a-b. Так же работают и *=, %=, /=, &=, |=, ^=, >>=, <<=. Приоритет операторов следующий:</p><p>(); %+-*/; >>, <<; &; ^; |; =, %=, *=, /=, +=, -=, &=, ^=, |=, <<=, >>=; ,</p><p>Литералы можно вводить в виде десятичных, шестнадцатеричных (с ведущими 0x) и восьмеричных чисел (с ведущим нулем). Например, set /a n1=0xffff присваивает n1 шестнадцатеричное значение.</p><h2>Внешние команды</h2><ul><li>Exit используется для выхода из консоли DOS или (с опцией /b) только текущего bat-файла или подпрограммы.</li><li>Ipconfig - это классическая консольная команда, которая выводит информацию о сети. Она включает MAC- и IP-адреса, и маски подсети.</li><li>Ping пингует IP-адрес, отправляя к нему пакеты данных, чтобы оценить его удаленность и время ожидания (отклика). Также используется для задания паузы. Например, команда ping 127.0.01 -n 6 приостанавливает выполнение кода на 5 с.</li> </ul><p>Библиотека команд bat-файлов огромна. К счастью, в Сети есть множество страниц, в которых все они перечислены, наряду с переменными пакетного скрипта.</p><p><img src='https://i2.wp.com/syl.ru/misc/i/ai/324915/1862017.jpg' width="100%" loading=lazy></p><h2>Шаг 3: запись и запуск bat-файла</h2><p>Следующий скрипт намного упростит ежедневную онлайн-активность. Что делать, если есть желание мгновенно открыть все свои любимые новостные сайты? Поскольку скрипты используют команды консоли, то можно создать сценарий, который открывает каждую новостную ленту в одном окне браузера.</p><p>Далее следует повторить процесс создания bat-файла, начав с пустого текстового документа. Для этого необходимо щелкнуть правой кнопкой мыши на пустом месте в какой-либо папке и выбрать пункт «Создать», а затем - «Текстовый документ». После открытия файла требуется ввести следующий скрипт, который запускает основные русскоязычные средства массовой информации, доступные в Интернете:</p><p>start "" http://fb.ru</p><p>start "" http://www.novayagazeta.ru</p><p>start "" http://echo.msk.ru</p><p>start "" http://www.kommersant.ru</p><p>start "" http://www.ng.ru</p><p>start "" http://meduza.io</p><p>start "" https://news.google.com/news/?ned=ru_ru&hl=ru</p><p>Данный скрипт содержит команды start “”, которые открывают несколько вкладок. Можно заменить предложенные ссылки любыми другими на выбор. После ввода скрипта следует зайти в меню редактора «Файл», а затем в «Сохранить как...» и записать документ с расширением.bat, изменив параметр «Тип файла» на «Все файлы» (*. *).</p><p>После сохранения для запуска скрипта достаточно дважды щелкнуть на нем. Веб-страницы мгновенно начнут загружаться. При желании можно разместить этот файл на своем рабочем столе. Это позволит получить мгновенный доступ ко всем любимым сайтам.</p><h2>Организатор</h2><p>Если загружать по несколько файлов в день, то в скором времени в папке «Загрузки» их скопятся сотни. Можно создать скрипт, который упорядочит их по типу. Достаточно поместить.bat-файл с программой в папку с неорганизованными данными и дважды щелкнуть для запуска:</p><p>rem Каждый файл в папке</p><p>for %%a in (".\*") do (</p><p>rem проверить на наличие расширения и непринадлежность к данному скрипту</p><p>if "%%~xa" NEQ "" if "%%~dpxa" NEQ "%~dpx0" (</p><p>rem проверить наличие папки для каждого расширения, и если ее нет, то создать</p><p>if not exist "%%~xa" mkdir "%%~xa"</p><p>rem переместить файл в папку</p><p>move "%%a" "%%~dpa%%~xa\"</p><p>В итоге файлы в директории «Загрузки» сортируются по папкам, названия которых соответствуют их расширению. Это так просто. Данный пакетный скрипт работает с любым типом данных, будь то документ, видео или аудио. Даже если ПК не поддерживает их, сценарий все равно создаст папку с соответствующей меткой. Если уже есть каталог JPG или PNG, то программа просто переместит туда файлы с данным расширением.</p><p>Это простая демонстрация того, на что способны пакетные скрипты. Если какую-то несложную задачу необходимо выполнять снова и снова, будь то упорядочение файлов, открытие нескольких веб-страниц, массовое переименование или создание копий важных документов, пакетный сценарий поможет выполнить утомительную работу за пару кликов.</p> <p>Теперь пришло время рассмотреть <b>bat команды </b>. В основном тут используются команды вводимые в cmd, но есть и такие, которые нет смысла использовать в командной строке.</p><h2>Как получить полный список bat команд</h2><p>Для описания всех команд потребуется написать целый ряд статей, чтобы Вас сильно не нагружать ограничимся в рамках одной статьи и рассмотрим компактную информацию. Как известно, команды bat файла и cmdодни и те же, чтобы получить их список или . Введите команду справки, которая по-английски пишется как help, нажмите Enter. В результате компьютер в интерфейсе cmd пропишет все команды с кратким описанием.</p><p>Ознакомившись с данным списком, Вы захотите узнать поподробнее, что представляет собой определенная bat команда. Например, выберем команду for, для ее описания введем help for или for /? и кликнем энтер. В результате Вы получите оперативную справку по команде, она объемная, поэтому потребуется нажать несколько раз любую клавишу, чтобы ознакомиться с последующим описанием. Таким образом, можно изучить синтаксис той или иной команды.</p><h2>Команды bat файла</h2><p>Сейчас познакомимся с командами, используемыми в пакетном файле, с кратким описанием. Они не чувствительны к регистру, тем не менее, Мы их перечислили в верхнем регистре, чтобы помочь с идентификацией.</p><table><tbody><tr><td width="319">@ </td><td width="319">Все выполняемые bat команды выводятся на экран, чтобы убрать лишнее, перед командой ставится «собака». Часто используется с @echo off. </td> </tr><tr><td width="319">set </td><td width="319">Задает переменные. Например, setper=c:\windows здесь per присваиваем путь. В переменную можно записать громоздкое значение и указать ее в сценарии, что сделает код компактнее. Если ее содержание изменится, тогда не придется менять везде значения, где предусмотрена эта переменная. </td> </tr><tr><td width="319">:: </td><td width="319">Один из двух методов комментирования в bat файле без вывода этой строки на экран. </td> </tr><tr><td width="319">:LABEL </td><td width="319">При добавлении к слову двоеточия, создается метка, которая позволяет перейти к разным разделам батника. Метка может носить другое название, LABEL это пример. </td> </tr><tr><td width="319">CALL </td><td width="319">Bat команда, вызывающая один пакетный файл в другом. Все параметры, описанные в одном из файлов, могут быть переданы друг другу. </td> </tr><tr><td width="319">CHOICE </td><td width="319">Команда выбора. </td> </tr><tr><td width="319">CLS </td><td width="319">Очищает содержимое командного интерпретатора, что выведено на экран выше CLS. </td> </tr><tr><td width="319">ECHO </td><td width="319">Выводит сообщение на экран. Например, «ECHO Привет!» выведет «Привет!». Если не использовать @ECHO off в начале пакетного файла, тогда Вы увидите путь к bat файлу и два сообщения, что является излишним. Вы можете создать пустую строку введите ECHO. с точкой в конце. </td> </tr><tr><td width="319">EXIT </td><td width="319">Завершает текущий пакетный сценарий. </td> </tr><tr><td width="319">GOTO LABEL </td><td width="319">Используется для перехода к определенной метки, в данном случае к LABEL и исполняет сценарий после нее. </td> </tr><tr><td width="319">IF </td><td width="319">Как и в языках программирования batкоманда ifолицетворяет выполнение условия, в зависимости от которого сценарий пойдет по тому или иному пути. С синтаксисом знакомьтесь в справке. </td> </tr><tr><td width="319">for </td><td width="319">Цикл, используемый для организации выполнения одних и тех же действий. </td> </tr><tr><td width="319">PAUSE </td><td width="319">Если необходимо ознакомиться с результатом сценария, а он выполняется, и окно быстро закрывается, тогда используйте PAUSE. Она позволит посмотреть результат и завершить сценарий по нажатию любой кнопки. </td> </tr><tr><td width="319">REM </td><td width="319">Второй способ комментирования. В отличии от:: печатается на экране, если нет конструкции @ECHO off. </td> </tr><tr><td width="319">SHIFT </td><td width="319">Изменяет положение пакетных параметров в bat файле. </td> </tr><tr><td width="319">START </td><td width="319">Запускает программы, окна и т.д. Имеет множество атрибутов (смотрите справку). </td> </tr></tbody></table><p>Это является основой bat команд. Синтаксис некоторых элементов сложен для новичков и требует определенные знания. Все <i>команды bat файла </i>, описанные выше, рассмотрены поверхностно, с целью узнать их предназначение, а полный синтаксис Вы найдете в справке Windows.</p> <p>1. Командный файл S.BAT, обеспечивающий постраничное отображение содержимого заданного текстового файла (с паузой после заполнения каждого экрана):</p> <p>IF /%1==/ GOTO ERR1 если не задан аргумент (имя файла) ,то ERR1</p> <p>IF NOT EXIST %1 GOTO ERR2 –если отсутствует заданный файл</p> <p>:ERR1 He задан аргумент</p> <p>ECHO Укажите имя файла</p> <p>:ERR2 Файл отсутствует</p> <p>ECHO Файл %1 отсутствует</p> <p>Команда More обеспечивает постраничное (полноэкранное) отображение содержимого текстового файла.</p> <p>Синтаксис:</p> <p>Фильтр MORE считывает текстовый файл со стандартного устройства ввода-вывода и отображает его содержимое с паузой каждый раз после заполнения экрана дисплея. При этом в последней (нижней) строке экрана выдается сообщение –MORE-. Для вывода следующей страницы достаточно нажать на клавиатуре любую клавишу.</p> <p>2. Командный -файл S.BAT, обеспечивающий добавление маршрутов поиска исполняемых файлов к уже имеющимся и отображение всех установленных маршрутов:</p> <p>IF /%1==/ GOTO END</p> <p>SET PATH=%PATH%;%1</p> <p>Команда PATH используется для установки и отображения маршрутов поиска исполняемых файлов.</p> <p>PATH …]</p> <p>PATH; -отменяет все маршруты поиска.</p> <p>Исполняемый файл сначала ищется в выделенном по его спецификации каталоге, а затем в каждом заданном каталоге dir.</p> <p>Если введено только имя команды, то выдаются текущие маршруты поиска.</p> <p>Пример использования:</p> <p>S C:\EDIT\TEXT\ME C:\DOS</p> <p>Рассмотренный командный файл работает нормально, только если значение глобально переменной PATH помещается на одной строке экрана.</p> <p>3. Командный файл DEL.BAT для удаления ВАК-файлов из заданного каталога, если он указан, или из рабочего каталога, если аргумент не задан</p> <p>IF NOT /%1==/ SET #DIR=%1\</p> <p>IF EXIST %#DIR%*.ВАК GOTO DEL</p> <p>ECHO Нет ВАК-файлов для удаления</p> <p>DIR %#DIR%*.ВАК</p> <p>ECHO Для отказа удаления,</p> <p>ECHO нажмите Ctrl-Break, а иначе -</p> <p>ECHO любую клавишу для продолжения</p> <p>DEL %#DIR%*.ВАК</p> <p>ECHO *** Файлы удалены ***</p> <p>В этом файле использована глобальная переменная с уникальным именем #DIR. Сначала ее значение сбрасывается командой SET. Это нужно для того, чтобы оно было пустым, а не осталось установленным после предыдущего вызова файла DEL.BAT. Затем, если аргумент задан, то к нему справа приписывается символ \ и результат сохраняется в качестве значения глобальной переменной #DIR. В последующих командах оно применяется в качестве префикса к составным именам ВАК-файлов.</p> <p>Указание d: в качестве аргумента приведет к удалению ВАК-файлов не в текущем, а в корневом каталоге диска d. Поэтому если требуется задать текущий каталог, то нужно использовать конструкцию d:..</p> <p>4. Командный файл LEX.BAT для вызова текстового редактора ЛЕКСИКОН с автоматической загрузкой в него последнего из ранее использованных для этой же цели текстовых файлов:</p> <p>IF /%1==/ GOTO N</p> <p>Если в ответ на приглашение DOS ввести</p> <p>LEX C:\TXT\M.TXT</p> <p>то спецификация указанного файла будет запомнена в глобальной переменной #DOC, а сам файл - загружен в редактор. Значение #DOC будет затем использоваться при запуске файла LEXICON.EXE командной строкой LEX без аргумента, обеспечивая загрузку в редактор последнего из заданных файлов.</p> <p>5. Для автоматического ответа на запрос команды OS или программы в командном файле можно использовать следующую схему:</p> <p><i>process </i> <YES</p> <p>Команда ECHO создает текстовый файл YES с ответом Y. Затем содержимое файла YES подается на стандартный ввод процесса. Этим имитируется ввод ответа Y с клавиатуры. После завершения процесса файл YES удаляется. Естественно, аналогичным образом можно задать любые требуемые ответы.</p> <p>Недостаток описанного способа состоит в необходимости создания и удаления файла, что требует много времени. Устранить этот недостаток можно путем создания постоянных текстовых файлов с различными вариантами ответов и их использования во всех командных файлах.</p> <p>Еще один способ автоматического ввода ответа в процесс состоит в использовании строки вида</p> <p>ECHO Y|<i>process </i></p> <p>6. Командные файлы для сохранения рабочего каталога в определенный момент и его восстановления после установки нового рабочего каталога. Для этого можно создать, например, в каталоге С:\ВАТ следующие командные файлы</p> <p>CD >C:\BAT\CURDIR</p> <p>COPY C:\BAT\CDFILE+C:\BAT\CUR C:\BAT\RETURN.BAT</p> <p>Текстовый файл CDFILE содержит «начало» команды CD. Его нужно сформировать с одним пробелом после CD и без маркера EOF. Командный файл SAV.BAT обеспечивает запись спецификации рабочего каталога в текстовый файл CUR и формирование <a href="/sozdanie-paketnyh-failov-primenyaemye-komandy-v-bat-failah/">командного файла</a> RETURN.BAT для восстановления этого каталога.</p> <p>Для удобства работы одним из маршрутов поиска исполняемых файлов должен быть С:\ВАТ.</p> <p>Пусть рабочим является каталог C\EDIT\TEXT\LEX. Если вызвать командный файл SAV (без аргументов), то будет сформирован командный файл RETURN, содержащий команду</p> <p>CD C\EDIT\TEXT\LEX</p> <p>После этого можно менять рабочие каталоги командой CD (но не командой d:). Для возврата в LEX достаточно будет ввести с клавиатуры RETURN.</p> <p>Каждое последующее выполнение файла SAV отменяет действие предыдущего без возможности восстановления.</p> <p>Описанная техника облегчает работу в случае наличия на жестким диске разветвленной файловой структуры.</p> <p>7. Командный файл F.BAT для резервирования содержимого жесткого диска на диск в приводе А:.</p> <p>ATTRIB +А С:\*.* /S архивный файл</p> <p>ECHO Установите отформатированный диск в привод А</p> <p>ECHO и затем нажмите любую клавишу</p> <p>XCOPY C:\*.* A: /S /M /E /V</p> <p>IF ERRORLEVEL 4 GOTO LOOP</p> <p>ECHO Резервирование завершено</p> <p>Команда ATTRIB устанавливает атрибут А у всех файлов. XCOPY копирует на диске в приводе А файловую структуру с жесткого диска. У всех скопированных файлов атрибут А сбрасывается. Выполнение команды XCOPY завершается в одном из следующих случаев:</p> <p>1) дискета заполнена, но не все файлы еще зарезервированы (код возврата 4);</p> <p>2) все файлы зарезервированы, файлов для копирования не найдено или выполнение команды прервано по Ctrl-Break (коды возврата 0, 1 и 2 соответственно);</p> <p>3) произошла критическая ошибка ввода-вывода (код возврата 5).</p> <p>В случаях 1 и 3 команда IF передаст управление на метку LOOP для продолжения (возобновления) резервирования на следующей дискете. При этом уже скопированные файлы не резервируются, так как их атрибуты А сброшены.</p> <p>Если произошел случай 2, то резервирование завершается с выдачей соответствующего сообщения.</p> <p>Конечно, можно ввести дополнительный анализ кода возврата 5.</p> <p>8. Резервирование всего содержимого жесткого диска требует много времени и большого количества дисков. Поэтому при повторном резервировании лучше в команде XCOPY использовать переключатель /D для копирования только тех файлов, которые созданы и обновлены после даты последнего резервирования. При этом для корректного выбора файлов требуется обеспечить работу DOS все время с правильной датой.</p> <p>Кроме того, пользователю нужно запоминать или записывать дату последнего резервирования файлов для указания се в переключателе /D. Чтобы избавиться от этого, можно создать следующие командные файлы:</p> <p>ECHO |MORE|DATE|FIND /V "Enter" >B.BAT</p> <p>ATTRIB +A C:\*.* /S</p> <p>ECHO Установите диск в привод А</p> <p>XCOPY C\*.* A: /S /M /E /V /D:%4</p> <p>IF ERRORLEVEL 4 GOTO LOOP</p> <p>ECHO Резервирование закончено</p> <p>Для того чтобы использовать эти файлы, нужно один раз сформировать файл BAT с помощью команды</p> <p>ECHO|MORE|DATE|FIND /V "Enter" >B.BAT</p> <p>Этот файл будет содержать только строку, аналогичную следующей:</p> <p>Current date is Sat 1-26-2009</p> <p>(Текущая дата - суббота 26.01.2009 г.)</p> <p>Команда MORE при отсутствии подлежащего отображению текста (от команды ECHO) генерирует маркер EOL и тем самым моделирует нажатие клавиши Enter в ответ на запрос текущей даты командой DATE. Команда же FIND отсекает из вывода команды DATЕ вторую строку (Enter new date (dd-mm-yy):).</p> <p>Можно создать файл B.BAT и любыми другими средствами, но его содержимое обязательно должно иметь указанный вид.</p> <p>Для резервирования новых файлов (созданных в день последнего резервирования или позже) теперь достаточно инициировать выполнение командного файла D. Он вызывает файл B.BAT, который интерпретируется как командный. При этом запускается командный файл C.BAT с четырьмя аргументами (date, is, день недели и дата).</p> <p>Четвертый аргумент (дата) замещает параметр %4 в переключателе /D команды XCOPY.</p> <p>После завершения резервирования управление возвращается в файл D.BAT и выполняется команда DATE, обновляющая файл B.BAT <a href="/kak-vystavit-vremya-na-kompyutere-bystraya-ustanovka-tekushchih-daty-i-vremeni/">текущей датой</a>, т.е. датой последнего резервирования. Поэтому после запуска DATECOPY через некоторый пepиoд времени резервирование пройдет в соответствии с ожиданиями (будут скопированы все файлы с учетом даты в B.BAT)</p> <p>При работе на компьютере часто возникает необходимость повтора одних и тех же DOS-команд для осуществления периодически исполняемых действий, построения сложной и многоуровневой последовательности <a href="/blat-ne-yavlyaetsya-vnutrennei-ili-vneshnei-komandoi-imya-faila-ne-yavlyaetsya/">исполняемых команд</a> или приложений, автоматизации работы с приложениями и файлами с участием или в отсутствие пользователя. В операционной системе есть возможность записать несколько команд в bat-файле. При этом, просто запуская данный командный файл (часто его называют скрипт, или просто «батник»), можно осуществлять выполнение прописанных команд, а прописав его в событиях <a href="/planirovshchik-vyklyucheniya-kompyutera-windows-7-avtomaticheskoe/">планировщика Windows</a>, можно автоматизировать этот процесс.</p><p>Особенностью файлов <a href="/abstraktnyi-tip-dannyh-abstraktnye-tipy-dannyh/">данного типа</a> является отсутствие внутри какого-либо кода - имеется только тактовая информация, которую считывает и исполняет командный DOS-процессор, совместимый практически со всеми версиями <a href="/pervye-sistemnye-programmy-proobraz-operacionnoi-sistemy/">операционной системы</a> Windows. Одним из ярких примеров является файл autoexec.bat, который необходим для запуска этой ОС, так как именно он осуществляет ее настройки в ходе запуска.</p><h2>Основные возможности командных файлов</h2><p>Команды, которые содержит bat-файл, по функционалу можно условно разделить на несколько групп:</p><p>Предназначенные для вывода на экран <a href="/kak-proverit-konfliktuyushchie-draivera-proverka-posle-bsod-kak-izmenit/">определенного значения</a>, фразы, приложения или сведений;<br>- для осуществления запуска пакетных документов;<br>- для работы с циклами;<br>- для создания ветвления исполнения с помощью условий;<br>- для работы с приложениями.</p><p><img src='https://i2.wp.com/fb.ru/misc/i/gallery/34400/1196214.jpg' width="100%" loading=lazy></p><h2>Выполнение командных файлов</h2><p>Запуск bat-файлов можно осуществить <a href="/v-kontakte-vhod-bez-kak-voiti-vkontakte-razlichnymi-sposobami/">различными способами</a>. При работе в в текущем каталоге можно просто вводить имена файлов с <a href="/dopolnitelnye-nastroiki-windows-10-video-kak-otklyuchit-vizualnye-effekty-otkryt/">дополнительными параметрами</a> или без них. При этом команды bat-файлов после запуска будут выполняться последовательно друг за другом, уже без вмешательства пользователя.</p><p>При нахождении командного файла в другом каталоге необходимо кроме полного имени этого файла прописать <a href="/chto-takoe-prostranstvo-imen-klassy-i-prostranstva-imen-dlya-etogo-neobhodimo/">полный путь</a> до каталога его хранения. Расширение файла также можно не прописывать. Например, текущий каталог d:\photo\work, а командный файл vera.bat, который нужно выполнить с параметрами resize.doc и /p, находится в каталоге d:\photo\home. Тогда для того, чтобы осуществился запуск нашего файла, нужно прописать команду d:\photo\home\vera resize.doc /p или команду..\home\vera resize.doc /p.</p><h2>Прерывание работы</h2><p>Исполняемые после запуска команды bat-файлов можно прервать комбинациями кнопок <Ctrl>+<Break> и <Ctrl>+<C>. На дисплее появится запрос на прерывание выполнения командного файла с запросом, ожидающим ввода Yes или No. Если ввести Y, то выполнение прервется, а оставшийся список команд bat-файла будет проигнорирован. Если введете символ N, то выполнение продолжится со следующей команды из списка.</p><p><img src='https://i0.wp.com/fb.ru/misc/i/gallery/34400/1196215.jpg' width="100%" loading=lazy></p><h2>Вызов другого командного файла</h2><p>Bat-файлы могут содержать в себе ссылки на исполнение других скриптов. Если просто прописать в теле скрипта bat-файл, команды после него уже исполняться не будут, так как управление передается на другой батник и будут выполнены команды уже из него. Если требуется возврат после запуска <a href="/ne-yavlyaetsya-vnutrennei-vneshnei-imya-faila-ne-yavlyaetsya-vnutrennei/">внутреннего файла</a>, то его можно вызвать командой CALL. Формат команды выглядит так: CALL имя-бат-файла [параметры запуска].</p><p>Параметрами, которые передаются вызываемому командному файлу (файлам), обычно являются символы %1 - %9. Когда команды bat-файлов все последовательно будут пройдены, продолжится выполнение исходного скрипта со следующей строки.</p><p><img src='https://i1.wp.com/fb.ru/misc/i/gallery/34400/1196205.jpg' width="100%" loading=lazy></p><h2>Пошаговое выполнение</h2><p>Бывают случаи, когда команды bat-файлов нужно выполнить пошагово (с остановкой после каждой строчки). Наиболее часто такой режим требуется при отладке или тестировании скриптов. Написание команды выглядит так: COMMAND /y/c имя _скрипта [параметры].</p><p>При выполнении на каждую команду будет выдаваться запрос Y или N. Если требуется выполнение команды — жмем <a href="/sochetanie-klavish-alt-enter-goryachie-klavishi-windows/">клавишу Enter</a> или Y. Если нужно пропустить команду — жмем ESC или N.</p><p><img src='https://i1.wp.com/fb.ru/misc/i/gallery/34400/1196217.jpg' width="100%" loading=lazy></p><h2>Отключение и включение вывода команд на экран</h2><p>Когда запускается bat-файл, команды построчно перед выполнением отображаются на экране и после этого выполняются. Иногда это вызывает неудобство, так как при большом батнике команды длинным списком пробегают перед пользователем на экране, а иногда требуется их показ, например, для диалога или отладки. Чтобы bat-файл команды выводил на дисплей, применяется команда ECHO ON. Для отключения этого режима нужно ввести ECHO с параметром OFF. При этом все исполняемые далее команды показываться на экране уже не будут.</p><p>Для отключения вывода только какой-либо одной строки батника на экран можно использовать в самом начале этой строки символ @. Чаще всего этот символ можно встретить в паре с командой @ECHO OFF для исключения вывода ее на дисплей монитора. Такой режим часто используют злоумышленники, создавая на основе bat-файлов вирусы или доставляя мелкие и крупные неприятности пользователям компьютеров.</p><p><img src='https://i1.wp.com/fb.ru/misc/i/gallery/30608/697440.jpg' height="597" width="581" loading=lazy></p><h2>Сообщения при исполнении команд</h2><p>Если после команды ECHO будут расположены символы, отличные от ON или OFF, то они будут выводиться на экран в любом режиме. Если ECHO будет без параметров, то она выдает на экран состояние режима отображения исполняемых команд — включен или выключен.</p><p>При желании можно воспроизвести даже (писк) компьютера, используя bat-файл. Команды, примеры которых приведены далее, основаны на операторе ECHO с добавлением специальных символов.</p><p>Для воспроизведения <a href="/korotkii-zvukovoi-signal-pri-vklyuchenii-kompyutera-dlinnyi-pisk-bios-zvukovye/">звукового сигнала</a> нужно вывести <a href="/standartnye-simvoly-specialnye-simvoly-dlya-nika-zv-zdochki/">стандартный символ</a> с кодом 7. Сделать это можно, нажав клавишу <alt> и «7» на <a href="/kak-vklyuchit-bokovuyu-klaviaturu-kak-vklyuchit-cifrovuyu-klaviaturu/">цифровой клавиатуре</a> (с надписью home).</p><p>Для того чтобы повысить удобочитаемость сообщений можно применить команду ECHO с параметром «.» (она ставится сразу за командой без пробела) или <a href="/statusy-graficheskie-simvoly-specialnye-simvoly-dlya-nika/">специальным символом</a> с кодом 255. На экране это будет выглядеть как пустая строчка.</p><p>Команду ECHO можно использовать для вывода сообщений в <a href="/kak-vosstanovit-vindovs-iz-faila-vhd-vosstanovlenie-otdelnyh-failov-iz/">отдельный файл</a>. Суть ее состоит в перенаправлении вывода сообщений на запись в файл, а не на экран монитора. Для сохранения логов, анкетирования, записи событий можно использовать bat. Команды вывода имеют следующий формат:</p><p>ECHO-сообщение >> имя файла — команда добавляет строчку в конец <a href="/what-types-of-files-exist-formats-types-of-files/">существующего файла</a>. Если такого файла в данной директории нет, то создается <a href="/outlook-ne-sinhronizirovat-podpisannye-papki-oshibka-problemy-sinhronizacii-pochty-sozdanie-novogo/">новый файл</a>.</p><p>ECHO-сообщение > имя файла — этой командой создается новый файл, и в него записывается текущая строчка. В случае наличия такого файла в текущей директории, содержимое его будет удалено и записана команда или ее результат.</p><h2>Использование комментариев</h2><p>Для удобства редактирования скриптов используется команда REM. Все находящиеся после нее команды <a href="/komandy-paketnyh-failov-windows-7-kak-iz-bat-faila-oboiti-proverku-daty/">bat-файлов Windows</a> игнорирует при исполнении. Их можно увидеть при редактировании и при <a href="/kak-zapustit-sistemu-v-bezopasnom-rezhime-kak-zapustit-komp-v/">пошаговом режиме</a>. Во всех других случаях комментарии на экран выводиться не будут.</p><p><img src='https://i2.wp.com/fb.ru/misc/i/gallery/7450/1197504.jpg' width="100%" loading=lazy></p><h2>Команда задержки в bat-файле</h2><p>Иногда во время выполнения батника возникает необходимость временно остановить исполнение команд, например, для ожидания реакции пользователя, для увеличения времени на прочтение <a href="/smpp-server-svoimi-rukami-peredacha-dlinnyh-soobshchenii-kratkoe/">длинного сообщения</a>, для вставки диска, подтверждения присутствия пользователя или для отладки пакетного файла. Команда задержки в bat-файле пишется как PAUSE без параметров. При этом на дисплее отобразится сообщение типа «Нажмите любую клавишу для продолжения», и выполнение скрипта будет приостановлено до нажатия кнопки клавиатуры. Если будет нажата комбинация <ctrl>+<break> или <ctrl>+<c>, то система воспримет это как завершение работы <a href="/kak-konvertirovat-fail-ispolnyaemym-windows-10-izmenyaem-rasshirenie/">исполняемого файла</a> и выдаст запрос на подтверждение завершения его работы: «Прервать выполнение командного файла? (Y/N)». Если нажать клавишу Y, то произойдет прерывание работы скрипта в этом месте и все оставшиеся невыполненные команды будут проигнорированы. При нажатии N выполнение будет продолжаться со следующей команды. При паузе нажатие любых других буквенно-цифровых клавиш, а также «Пробел» и «Ввод» выполнение исполняемого файла будет продолжаться со следующей команды.</p><p><img src='https://i2.wp.com/fb.ru/misc/i/gallery/34400/1196024.jpg' height="200" width="300" loading=lazy></p><h2> списка файлов</h2><p>Для последовательного исполнения нескольких файлов из списка, находящихся в одной директории, также можно использовать bat-файл. Команды «запуск программы по названию» и «запуск программы по расширению файла» часто могут помочь с автоматизацией обработки документов, например сортировка вложений почты. Отличаются они параметрами для команды FOR. Формат написания ее приведен ниже:</p><p>FOR %x IN (список файлов) DO команда, где:</p><p>Х - любой символ, за исключением цифр от 0 до 9;</p><p>Список — разделенные пробелами имена файлов или название одного файла; при этом можно использовать спецсимволы «?» и «*» для замены от одного до нескольких знаков в названии файлов;</p><p>Команда — любая DOS-команда или программа, кроме FOR; если есть необходимость <a href="/s-pomoshchyu-do-while-sdelat-vybor-primery-ispolzovaniya-operatora/">использования FOR</a>, то вместо %x нужно указать %%x.</p><p><img src='https://i1.wp.com/fb.ru/misc/i/gallery/34400/1196206.jpg' width="100%" loading=lazy></p><p>При использовании этой команды для написания bat-файлов нужно учитывать, что имена в программах формата DOS имеют ограничение по длине названия. Для того чтобы произвести переключение команды FOR на работу с <a href="/ukazano-slishkom-dlinnoe-imya-faila-otkryt-esli-ne-udalyaetsya-fail-s/">длинными именами</a> файлов, нужно не забыть перед ней запустить команду LFNFOR ON для включения режима работы с длинными именами и LFNFOR OFF для его отключения и возврата к стандартной длине файлов.</p><p>Многие функции с программами, такие как сравнение файлов с определенными типами расширений, находящихся в одной директории, с файлами тех же типов из другой директории, копирование всех файлов текущего каталога в другой, последовательное исполнение файлов с расширениями <a href="/otklyuchit-obnovleniya-sistemy-bezopasnosti-v-windows-10-v/">определенного типа</a> и названиями, начинающимися с цифр, можно осуществить с помощью всего лишь одной вписанной в bat-файл команды. Запуск программы можно комбинировать с запросами пользователя, что способствует повышению удобства работы с данными.</p><p><img src='https://i2.wp.com/fb.ru/misc/i/gallery/34400/1196211.jpg' width="100%" loading=lazy></p><h2>Переходы в bat-файлах</h2><p>Для удобства управления порядком запуска команд в bat-файлах в них часто используют команды переходов и метки, по которым эти переходы осуществляются. <br>Метка представляет собой любую строку исполняемого файла, которая начинается с символа «двоеточие». Имя метки — это набор символов после двоеточия до конца строки или до первого пробела, после которого остаток строки игнорируется, что можно использовать как комментарий к метке перехода.</p><p>Команда перехода имеет написание GOTO с названием метки через пробел. Если параметра нет или название метки в командном файле не обнаружено, то работа скрипта на этой команде прекращается. Пример:</p><p>REM (запускаются требуемые команды).</p><p>В этом примере последовательное исполнение командного файла, дойдя до GOTO zzz, переходит на метку:zzz и продолжается с REM, игнорируя все, что находится между командой перехода и указанной меткой.</p><p><img src='https://i1.wp.com/fb.ru/misc/i/gallery/34400/1196209.jpg' width="100%" loading=lazy></p><h2>Использование условий при работе с bat-файлами</h2><p>Bat-файл может исполнять или не исполнять команды в зависимости от <a href="/knigi-i-spravochniki-po-vyzhivaniyu-v-razlichnyh-ekstremalnyh-i-avariinyh/">различных условий</a>, если в нем применяется проверка наступления события IF. Формат этой команды выглядит как «IF условие команда».</p><p>Условие представляет собой различные варианты выражений:</p><p>ERRORLEVEL число — в том случае, когда предыдущая выполняемая программа закончилась с кодом завершения, равным указанному <a href="/00ff00-cvet-cvet-v-stilyah-mozhno-zadavat-raznymi-sposobami-po/">числовому значению</a> или больше него, условие будет истинным.</p><p>СТРОКА 1 == СТРОКА 2 - в случае полного совпадения строк условие становится истинным. Вместо строк можно подставить символы %0 - %9, тогда будут сравниваться параметры командного файла.</p><p>EXIST - имя файла - если <a href="/kak-ukazat-rasshirenie-faila-kak-pokazyvat-rasshireniya-failov-v/">указанный файл</a> существует, то условие истинное.</p><p>NOT - условие — если <a href="/takzhe-pomozhet-s-vyborom-oformleniem-zakaza-ukazany-usloviya-dlya-besplatnoi/">указанное условие</a> ложное, то на выходе команды получим истинное значение.</p><p><img src='https://i2.wp.com/fb.ru/misc/i/gallery/34400/1196216.jpg' width="100%" loading=lazy></p><h2>Применяемые команды в bat-файлах</h2><p>Если нажать кнопку "Пуск" и запустить командную строку (cmd), то можно посмотреть все вставляемые в bat-файл можно использовать как средство для отладки, как помощника, программу для получения сведений о командах. Для этого просто можно набрать HELP. При этом выдается список команд с краткими описаниями к ним. Для получения более <a href="/odnoklassniki-vhod-na-moyu-stranicu-uzhe-zaregistrirovan-zaiti-v/">детальной информации</a> можно ввести HELP с названием нужной команды.</p><p><img src='https://i1.wp.com/fb.ru/misc/i/gallery/34400/1196207.jpg' height="200" width="300" loading=lazy></p><h2>Использование bat-файлов при резервном копировании данных</h2><p>Командные файлы сильно упрощают жизнь <a href="/sistemnyi-administrator-umer-da-zdravstvuet-sistemnyi-administrator/">системным администраторам</a> при осуществлении повседневной работы. Наиболее распространенной сферой их применения являются создание, удаление, переименование и многое другое. Все это основано на использовании команды bat-файла COPY. К примеру, можно создать программу, которая делает архивные копии документов из выбранной папки с пользовательскими данными определенных форматов, исключив, допустим, медиафайлы большого объема, обеспечив резервирование в папке с именем пользователя и и назвать ее "Команда_копирования_файлов.bat". После этого необходимо обеспечить ее запуск в <a href="/kak-vyklyuchit-kompyuter-cherez-opredelennoe-vremya-otklyuchaem-perehod/">определенное время</a> с помощью встроенного планировщика или силами самой программы и тем самым обеспечить сохранность данных пользователя.</p> <script type="text/javascript"> <!-- var _acic={dataProvider:10};(function(){var e=document.createElement("script");e.type="text/javascript";e.async=true;e.src="https://www.acint.net/aci.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})() //--> </script><br> <br> <script>document.write("<img style='display:none;' src='//counter.yadro.ru/hit;artfast_after?t44.1;r"+ escape(document.referrer)+((typeof(screen)=="undefined")?"": ";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth? screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+";h"+escape(document.title.substring(0,150))+ ";"+Math.random()+ "border='0' width='1' height='1' loading=lazy>");</script> </div> <div class="clear"></div> </div> </article> <div class='yarpp-related'> <section id="related_posts"> <div class="block-head"> <span>Больше информации по теме</span> <div class="stripe-line"></div> </div> <div class="post-listing"> <div class="related-item"> <div class="post-thumbnail tie-appear replacemy" data="post_7839"> <img width="195" height="110" src="/uploads/14804da2c8935d3aeddfb0e10957d20d.jpg" class="attachment-tie-related size-tie-related wp-post-image" alt="Исправляем проблемы с загрузчиком используя командную строку" / loading=lazy></div> <a class="post_7839" href="/fixboot-smogla-naiti-sistemnyi-disk-ispravlyaem-problemy-s/">Исправляем проблемы с загрузчиком используя командную строку</a></div> <div class="related-item"> <div class="post-thumbnail tie-appear replacemy" data="post_7839"> <img width="195" height="110" src="/uploads/14804da2c8935d3aeddfb0e10957d20d.jpg" class="attachment-tie-related size-tie-related wp-post-image" alt="Исправляем проблемы с загрузчиком используя командную строку" / loading=lazy></div> <a class="post_7839" href="/fixboot-smogla-naiti-sistemnyi-disk-ispravlyaem-problemy-s/">Исправляем проблемы с загрузчиком используя командную строку</a></div> <div class="related-item"> <div class="post-thumbnail tie-appear replacemy" data="post_7839"> <img width="195" height="110" src="/uploads/d0db4e02378ad6b5b4953112dac80a72.jpg" class="attachment-tie-related size-tie-related wp-post-image" alt="Украли телефон - что делать?" / loading=lazy></div> <a class="post_7839" href="/ukrali-telefon---chto-delat-kak-otsledit-telefon-kak-naiti/">Украли телефон - что делать?</a></div> <div class="related-item"> <div class="post-thumbnail tie-appear replacemy" data="post_7839"> <img width="195" height="110" src="/uploads/d0db4e02378ad6b5b4953112dac80a72.jpg" class="attachment-tie-related size-tie-related wp-post-image" alt="Украли телефон - что делать?" / loading=lazy></div> <a class="post_7839" href="/ukrali-telefon---chto-delat-kak-otsledit-telefon-kak-naiti/">Украли телефон - что делать?</a></div> <div class="related-item"> <div class="post-thumbnail tie-appear replacemy" data="post_7839"> <img width="195" height="110" src="/uploads/b74e9d30305c73622b2ca923e829131f.jpg" class="attachment-tie-related size-tie-related wp-post-image" alt="Bootstrap - Создание галереи изображений" / loading=lazy></div> <a class="post_7839" href="/menyayushchiesya-fotografii-v-setke-jquery-bootstrap---sozdanie-galerei-izobrazhenii/">Bootstrap - Создание галереи изображений</a></div> <div class="related-item"> <div class="post-thumbnail tie-appear replacemy" data="post_7839"> <img width="195" height="110" src="/uploads/f53f780e3202488bef1a4da82abf5f64.jpg" class="attachment-tie-related size-tie-related wp-post-image" alt="Как сделать автообновление страницы в яндекс браузере Автообновление в Opera" / loading=lazy></div> <a class="post_7839" href="/avtoobnovlenie-stranicy-v-brauzere-kak-sdelat-avtoobnovlenie-stranicy-v-yandeks/">Как сделать автообновление страницы в яндекс браузере Автообновление в Opera</a></div> </div> </section> </div> <div id="comments"> <ol class="commentlist"> <div class='rreekk' rel='15'> <div id="smartrotator_ad_4" onclick="yaCounter40492595.reachGoal ('tizercommentbefore1'); return true;"></div> </div> </ol> <div class="clear"></div> <div id="respond" class="comment-respond"> </div> </div> </div> <aside id="sidebar"> <div class="theiaStickySidebar"> <div class="execphpwidget"> <div id="text-4" class="widget widget_text"> <div class="widget-top"> <span>Полезное</span> <div class="stripe-line"></div> </div> <div class="widget-container"> <div class="textwidget"> <style> .wpp-list li img { -webkit-border-radius: 65px; -moz-border-radius: 65px; border-radius: 65px; } .wpp-list li .post-views { display: block; margin-left: 70px; color: #828283; font-size: 12px; } .wpp-list li .post-views i { font-size: 13px; } .wpp-list li { line-height: 22px !important; } .replacemy { cursor: pointer; } } </style> <ul class="wpp-list"> <li> <div class="replacemy"><img src="/uploads/0e82d82771c814e63babbb51f9cd0f77.jpg" width="65" height="65" title="Как сделать приложение или игру для андроид Способы и стоимость создания приложения" alt="Как сделать приложение или игру для андроид Способы и стоимость создания приложения" class="wpp-thumbnail wpp_cached_thumb wpp_featured" / loading=lazy></div><a href="/razrabotka-android-prilozhenii-osnovnye-instrumenty-kak-sdelat/" class=""><br>Как сделать приложение или игру для андроид Способы и стоимость создания приложения</a></li> <li> <div class="replacemy"><img src="/uploads/94f5519ca237e87c01dbae1bd1314479.jpg" width="65" height="65" title="Что делать, если вместо текста иероглифы (в Word, браузере или текстовом документе) Непонятные иероглифы вместо букв" alt="Что делать, если вместо текста иероглифы (в Word, браузере или текстовом документе) Непонятные иероглифы вместо букв" class="wpp-thumbnail wpp_cached_thumb wpp_featured" / loading=lazy></div><a href="/v-dokumentah-vmesto-teksta-otobrazhayutsya-ieroglify-chto-delat-esli-vmesto/" class=""><br>Что делать, если вместо текста иероглифы (в Word, браузере или текстовом документе) Непонятные иероглифы вместо букв</a></li> <li> <div class="replacemy"><img src="/uploads/676f48b5f6d021bdc3d89bee705135d7.jpg" width="65" height="65" title="Часы пропеллер на pic16f628a своими руками" alt="Часы пропеллер на pic16f628a своими руками" class="wpp-thumbnail wpp_cached_thumb wpp_featured" / loading=lazy></div><a href="/chasy-propeller-na-pic16f628a-svoimi-rukami-chasy-boba-blika-chasy/" class=""><br>Часы пропеллер на pic16f628a своими руками</a></li> <li> <div class="replacemy"><img src="/uploads/3717c2a058018e21f48abfc24ef969e2.jpg" width="65" height="65" title="Почему Не работает вентилятор на ноутбуке!" alt="Почему Не работает вентилятор на ноутбуке!" class="wpp-thumbnail wpp_cached_thumb wpp_featured" / loading=lazy></div><a href="/kompyuter-ne-vklyuchaetsya-no-ventilyatory-sistemnogo-bloka-rabotayut-pochemu-ne/" class=""><br>Почему Не работает вентилятор на ноутбуке!</a></li> <li> <div class="replacemy"><img src="/uploads/9639f33d2a4dc30cfae59fe9bc04e261.jpg" width="65" height="65" title="Калорийность, химический состав и пищевая ценность" alt="Калорийность, химический состав и пищевая ценность" class="wpp-thumbnail wpp_cached_thumb wpp_featured" / loading=lazy></div><a href="/recept-morkov-po-koreiski-kaloriinost-himicheskii-sostav-i-pishchevaya/" class=""><br>Калорийность, химический состав и пищевая ценность</a></li> </ul> </div> </div> </div> </div> </div> <div> </div> </aside> <div class="clear"></div> </div> <footer id="theme-footer"> <div id="footer-widget-area" class="wide-narrow-2c"><div id="footer-first" class="footer-widgets-box"><div id="text-2" class="footer-widget widget_text"><div class="footer-widget-top"></div><div class="footer-widget-container"><div class="textwidget"> <p>Все о современной технике. Ошибки. Игры. Поломки. Техника. Интернет <p></p> </div></div></div></div><div id="footer-second" class="footer-widgets-box"><div id="text-3" class="footer-widget widget_text"> <div class="footer-widget-top"></div> <div class="footer-widget-container"> <div class="textwidget"><a href="/sitemap.xml">Карта сайта</a></div> </div> </div><div id="text-7" class="footer-widget widget_text"><div class="footer-widget-top"></div><div class="footer-widget-container"><div class="textwidget"><br> <a href="/feedback/">Обратная связь</a> </div></div></div></div></div><div class="clear"></div> </footer> <div class="clear"></div> <div class="footer-bottom"> <div class="container"> <div class="alignright"></div> <div class="alignleft"> © Copyright 2024, https://qzoreteam.ru</div> <div class="clear"></div> </div> </div> </div> </div> </div> <div id="topcontrol" class="fa fa-angle-up" title="Перейти к началу страницы"></div> <div id="fb-root"></div> <script type="text/javascript"> jQuery(function($) { $(document).on("click", ".pseudo-link", function() { window.open($(this).data("uri")); }); }); </script> <script type='text/javascript'> /* */ var tocplus = { "smooth_scroll": "1", "visibility_show": "\u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c", "visibility_hide": "\u0441\u043a\u0440\u044b\u0442\u044c", "width": "310px" }; /* */ </script> <script type='text/javascript' src='https://qzoreteam.ru/wp-content/plugins/table-of-contents-plus/front.min.js'></script> <script type='text/javascript' src='https://qzoreteam.ru/wp-content/plugins/wp-polls/polls-js.js'></script> <script type='text/javascript' src='https://qzoreteam.ru/wp-content/plugins/wp-postratings/js/postratings-js.js'></script> <script type='text/javascript'> /* */ var tie = { "mobile_menu_active": "true", "mobile_menu_top": "", "lightbox_all": "", "lightbox_gallery": "", "woocommerce_lightbox": "", "lightbox_skin": "dark", "lightbox_thumb": "vertical", "lightbox_arrows": "true", "sticky_sidebar": "", "is_singular": "1", "SmothScroll": "true", "reading_indicator": "", "lang_no_results": "\u041d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043d\u0430\u0448\u043b\u043e\u0441\u044c", "lang_results_found": "\u041d\u0430\u0439\u0434\u0435\u043d\u043d\u044b\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b" }; /* */ </script> <script type='text/javascript' src='https://qzoreteam.ru/wp-content/themes/pochk/js/tie-scripts.js'></script> <script type='text/javascript' src='https://qzoreteam.ru/wp-content/themes/pochk/js/ilightbox.packed.js'></script> <script type='text/javascript' src='/wp-includes/js/comment-reply.min.js'></script> <script type='text/javascript' src='/wp-includes/js/wp-embed.min.js'></script> <script type='text/javascript'> /* */ var gglcptch_pre = { "messages": { "in_progress": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0434\u043e\u0436\u0434\u0438\u0442\u0435\u0441\u044c \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 Google reCAPTCHA.", "timeout": "\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c Google reCAPTCHA. \u041f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u0412\u0430\u0448\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a \u0441\u0435\u0442\u0438 \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0438 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0435 \u044d\u0442\u0443 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443." } }; /* */ </script> <script type='text/javascript' src='https://qzoreteam.ru/wp-content/plugins/google-captcha/js/pre-api-script.js'></script> <script type='text/javascript' data-cfasync="false" async="async" defer="defer" src='https://www.google.com/recaptcha/api.js?onload=gglcptch_onload_callback&render=explicit'></script> <script type='text/javascript' src='https://qzoreteam.ru/wp-content/plugins/google-captcha/js/script.js'></script> <script type="text/javascript" src="https://qzoreteam.ru/wp-content/themes/pochk/my/my.js"></script> <script type="text/javascript" src="https://qzoreteam.ru/wp-content/themes/pochk/my/etimer.js"></script> </body> </html>