Разное

Bat файлы cmd файлы: Командные файлы Windows

Содержание

BAT-файл для открытия CMD в текущем каталоге

У меня есть много сценариев, с которыми я взаимодействую из командной строки. Каждый раз, когда мне нужно их использовать, я должен открыть окно командной строки и скопировать+paste и CD в путь к каталогу, в котором они находятся. Это утомительно (они находятся в довольно глубокой файловой системе, поэтому набирать полный путь-это боль, копировать+вставлять лучше, но не намного). Я попытался создать файл .BAT, который можно было бы дважды щелкнуть, чтобы открыть новое окно командной строки в папке, в которой существует файл .bat, но он не работает. Он открывает новое окно, но рабочий каталог-это не тот каталог, в котором находится файл .bat. Вот что я получил после долгих поисков в Google (мои навыки cmd не так уж велики):

cd %CD%
cmd.exe

Я знаю, когда я использовал Linux, что у Konqueror была функция «Command-line window here», и это тот эффект, который я пытаюсь получить на Windows.

windows

cmd

windows-xp

Поделиться

Источник


FrustratedWithFormsDesigner    

15 декабря 2010 в 15:32

17 ответов




97

вы, вероятно, хотите сделать это:

cd /d %~dp0
cmd.exe

это установит ваш текущий каталог в каталог, в котором у вас есть batch file

Поделиться


Chris    

15 декабря 2010 в 15:43



48

Создайте файл с именем open_dos_here.cmd со следующими строками:

%~d1
cd "%~p1"
call cmd

Поместите этот файл в любую папку.
Затем перейдите в папку отправить( Win + E ; Alt + D ; shell:sendto ; Enter ).
Создайте ярлык, чтобы указать на этот open_dos_here. cmd

Затем в любой папке выберите любой файл или подпапку. Щелкните правой кнопкой мыши и выберите «Send To», а затем выберите open_dos_here.cmd , чтобы открыть DOS в этой папке.

Поделиться


Alvin SIU    

16 декабря 2010 в 14:28



28

Вы можете просто ввести cmd в адресную строку в Explorer, и он запустится по этому пути. Аналогично для PowerShell.

Поделиться


Joey    

28 июня 2012 в 12:05


  • . Bat файл для открытия окна cmd

    Итак, я должен написать файл .bat, чтобы открыть окно DOS, чтобы я мог запустить свой проект CS. Да, я знаю, что могу просто открыть окно cmd, но профессор хочет, чтобы мы написали файл .bat, чтобы открыть окно cmd. Кто-нибудь знает, как написать файл .bat, чтобы открыть cmdwindow? Кстати, я…

  • Excel VBA Как выполнить файл BAT в папках текущего каталога

    У меня возникли проблемы с выполнением файла bat, который находится в папке внутри текущего каталога листа excel, в котором выполняется макрос. В настоящее время у меня есть это. Shell cmd.exe /k cd /d & ThisWorkbook.PATH & && Comms.BAT Это работает, если файл BAT находится в…



13

Есть более простой способ

start /d "folder path"

Поделиться


s-f    

13 мая 2014 в 13:57



7

В качестве более общего решения вы можете проверить Microsoft Power Toy for XP, которая добавляет опцию «Open Command Window Here» при щелчке правой кнопкой мыши: http:/ / www.microsoft.com/windowsxp/downloads/powertoys/xppowertoys.mspx

В Vista и Windows 7 вы получите эту опцию, если удержите нажатой клавишу shift и щелкните правой кнопкой мыши (это встроено).

Поделиться


DKnight    

21 декабря 2010 в 17:03



6

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

Лучше добавить эту строку и к вашему batch file:

REM Change Current Directory to the location of this batch file 
CD /D %~dp0

если только вы полностью не квалифицируете все свои пути.

Поделиться


Chad    

04 декабря 2012 в 00:05



3

Самая простая команда для этого:

start

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

Поделиться


Michael Kalygin    

16 июня 2014 в 20:38



3

Самый простой способ в explorer-это Shift + щелчок правой кнопкой мыши по папке или по пустому месту в папке и щелчок по Open command prompt here .

Затем CMD запустится в этой папке

Должен сказать, я не уверен, что он работает для Windows Vista и ниже, но он определенно работает для Windows 7, 8, 8. 1 и 10.

Поделиться


Dediqated    

17 декабря 2015 в 15:09



2

Вы можете добавить запись контекстного меню через реестр:

  1. Перейдите в свой реестр к
    HKEY_LOCAL_MACHINE/Software/Classes/Folder/Shell
    и создайте ключ с именем «Command Prompt» без кавычек.

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

  3. Создайте новый ключ в только что созданной командной строке с именем «command,» и установите строку по умолчанию в значение

    cmd.exe /k pushd %1
    

Возможно, вам придется добавить %SystemRoot%\system32\ перед cmd.exe, если исполняемый файл не может быть найден.

  1. Изменения должны произойти немедленно. Щелкните правой кнопкой мыши папку, и появится новый пункт меню.

Также смотрите http://www. petri.co.il/add_command_prompt_here_shortcut_to_windows_explorer.htm

Поделиться


mit    

28 июня 2012 в 12:00



2

Другое решение — использовать файл быстрого доступа к cmd.exe вместо batch file.

Измените значение свойства start in ярлыка на %~dp0 .

Вы достигаете того же самого, за исключением того, что у него есть значок Cmd (и вы можете изменить это).

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

Поделиться


andyhasit    

18 сентября 2012 в 09:47



2

Ссылаясь на ответ @Chris,

Мы также можем перейти в родительский каталог batch file и выполнить следующие команды

cd /d %~dp0. .
<OTHER_BATCH_COMMANDS>
cmd.exe

Чтобы понять работу команды cd /d %~dp0.. , пожалуйста, обратитесь к ссылке ниже

Что означает команда cd /d %~dp0 в Windows

Поделиться


Mr. Noddy    

06 января 2017 в 09:05



1

Создайте новый файл startCmdLine.bat в вашем каталоге и поместите в него эту строку

call cmd

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

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

Поделиться


filip    

23 июля 2014 в 12:37



0

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

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

Первое Решение:

  • Нажмите кнопку «Start»
  • Щелкните правой кнопкой мыши «Computer» (или «Мой компьютер)
  • Нажмите кнопку «Properties»
  • Слева нажмите кнопку » Дополнительные настройки системы»
  • Нажмите кнопку «Environment Variables»
  • В поле «System Variables» прокрутите страницу вниз и выберите «PATH»
  • Нажмите кнопку «Edit»
  • В поле «Variable Value» прокрутите страницу до конца вправо
  • Если там еще нет точки с запятой (;), добавьте ее.
  • Вставьте путь к файлу, который вы скопировали ранее.
  • Заканчиваются точкой с запятой.
  • Нажмите кнопку «OK»
  • Нажмите кнопку «OK» еще раз
  • Нажмите «OK» в последний раз

Теперь вы можете использовать любой из ваших сценариев, как если бы вы уже были этой папкой.

Второе решение: (может быть легко спарено с первым для дополнительной полезности)

На рабочем столе создайте batch file со следующим содержимым.

@echo off
cmd /k cd "C:\your\file\path"

Это откроет командное окно, подобное тому, что вы пытались сделать.


Для получения тонны информации о командах windows проверьте здесь: http://ss64.com/nt/

Поделиться


Tim Harden    

27 марта 2014 в 21:57



0

этот код работает для меня
назовите его cmd.bat

@echo off
title This is Only A Test
echo.
:Loop
set /p the="%cd%"
%the%
echo.
goto loop

Поделиться


Viscarr    

23 июня 2014 в 16:37



0

вы можете попробовать:

shift + right click

затем нажмите кнопку Открыть командную строку здесь

Поделиться


elfekz    

26 апреля 2017 в 13:09



0

Внутри данной папки нажмите на верхнюю адресную строку и введите cmd , а затем нажмите enter
, чтобы открыть командную строку с текущим адресом папки.

Поделиться


codemirror    

13 марта 2019 в 07:13



0

Вы можете просто создать bat-файл в любом удобном месте и поместить на него любой файл из нужного каталога.
Хаха. Код для этого:

cmd

Поделиться


Gosha    

08 мая 2020 в 08:46


Похожие вопросы:

Как запустить файл с другим расширением как BAT файл

Представьте себе, что у вас есть текстовый файл с пользовательским (не зарезервированным) расширением myFileSayHello.myExtension Который содержит например: @echo on @echo Hello @pause Как я могу…

Sublime Text 2-Открыть приглашение CMD в текущем каталоге или каталоге проекта (Windows)

Я нашел следующую команду Sublime действительно полезной, так как она открывает окно explorer в месте расположения текущего файла: { keys: [ctrl+alt+o], command: open_dir, args: {dir: $file_path,. ..

C# вызовите файл cmd/bat в том же окне

Используя консоль C#, мы могли бы вызвать текущие файлы cmd/bat. Но он всегда всплывает в новом окне командной строки. Я пробовал вызывать свои файлы cmd/bat один за другим и не мог знать, как…

Как я могу ввести все, что находится в текущем каталоге, в исполняемый файл с помощью Windows batch (cmd)?

Я новичок, использующий пакет Windows cmd для запуска моего исполняемого файла OpenCV. Я хочу это сделать: Я успешно создал исполняемый файл в текущем каталоге (myImgProc.exe). У меня есть несколько…

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

Я хочу создать псевдоним для открытия последнего каталога в текущем каталоге, возможно, я думаю, что можно использовать эту команду для получения имени каталога : ls-1t / head -1 Но я не говорю…

. Bat файл для открытия окна cmd

Итак, я должен написать файл .bat, чтобы открыть окно DOS, чтобы я мог запустить свой проект CS. Да, я знаю, что могу просто открыть окно cmd, но профессор хочет, чтобы мы написали файл .bat, чтобы…

Excel VBA Как выполнить файл BAT в папках текущего каталога

У меня возникли проблемы с выполнением файла bat, который находится в папке внутри текущего каталога листа excel, в котором выполняется макрос. В настоящее время у меня есть это. Shell cmd.exe /k cd…

Откройте python shell в текущем каталоге

Я хочу открыть python shell в текущем каталоге, например cmd. Моя система-windows 10. Как я могу этого достичь? Что-то вроде того: Предположим, что я открываю каталог на диске D, скажем, путь…

Запустите файл cmd bat в PHP

Я пытаюсь запустить файл .bat с PHP на сервере WAMP на Windows. Ниже приведен мой код, первый оператор if запускается и выводит Successful на экран. Итак, функция exec запущена, но ни один файл не…

Как я могу запустить консоль msys2 в текущем каталоге cmd?

Я установил msys2, но не могу запустить консоль msys2 в текущем каталоге cmd. пример cmd консоль cd path/to/mypath msys2 -mingw64 # not run on path/to/mypath dir runs only its own default path SORRY…

Работа с командной строкой — Документация Руководство по командной строке Windows 18.08.2015

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

В разделе перечислены базовые приемы работы в командной строке Windows.

Запуск командной строки

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

  • «Пуск → Выполнить» (или клавиши Win+R) введите cmd и нажмите клавишу Enter;
  • «Пуск → Все программы → Стандартные → Командная строка»;
  • «Пуск → Поиск → Командная строка».

Ввод команд

Команды вводятся посредством ввода с клавиатуры. Простейшая команда help выводит список всех доступных команд. Также вы можете просмотреть полный перечень команд в статье Список команд Windows ( Windows CMD ).

Для вывода справки по конкретной команде введите help название_команды, например:

Перечень основных команд и примеры их использования приведены в разделе Основные команды данного руководства.

Bat-файлы

Используя команды можно написать bat файлы,которые позволяют упрощать и автоматизировать выполнение задач. Более подробно работа с bat файлами рассматривается в статьях:

Автодополнение путей файлов

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

Если на букву U начинается несколько директорий или файлов, то при каждом последующем нажатии Tab будет происходить перебор названий. Чтобы произвести перебор в обратном порядке, нажимайте Tab c зайжатой клавишей Shift.

Если папка состоит из нескольких слов, разделенных пробелом или из кириллических символов, то весь путь берется в кавычки, например, cd "C:\Documents and Settings"

Копирование текста в/из командной строки

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

  1. Нажать правой кнопкой мыши на заголовок окна командной строки и выбрать пункт «Свойства»;
  2. Установить галочки напротив «Выделение мышью» и «Быстрая вставка»;

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

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

Информацию, выводимую программами в командную строку, можно перенаправить в файл. Делается это с помощью символа >, например, systeminfo > C:\Users\mazhartsev\Desktop\test.txt.

Если файл не существует, то он будет создан. Если существует, то он будет перезаписан. Чтобы записать данные в конец файла, необходимо воспользоваться командой >>, например: systeminfo >> C:\Users\mazhartsev\Desktop\test.txt

Данные команды называются операторами перенаправления.

Операторы перенаправления
ОписаниеОператор перенаправления
>Записывает данные на выходе команды вместо командной строки в файл или на устройство, например, на принтер.
<Читает поток входных данных команды из файла, а не с клавиатуры.
>>Добавляет выходные данные команды в конец файла, не удаляя при этом существующей информации из файла.
>&Считывает данные на выходе одного дескриптора как входные данные для другого дескриптора.
<&Считывает входные данные одного дескриптора как выходные данные другого дескриптора.
|Считывает выходные данные одной команды и записывает их на вход другой команды. Эта процедура известна под названием «канал».

Как создать пакетный файл BAT для выполнения в командной строке CMD | Руслан Ермолов

Batch (.bat) файл — это инструмент, который сэкономит вам не один десяток часов рабочего времени. Узнайте сейчас как использовать пакетный файл на практике.

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

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

Вы, должно быть, уже в курсе о существовании такой утилиты как “Командная строка” Windows, или CMD. Она работает путем ввода команд в качестве входных данных и обрабатывает их, проводя нужные операции с компьютером. Тем не менее, несмотря на всю полезность инструмента, командная строка устраивает далеко не всех. Сложность утилиты и высокий порог вхождения делают ее “последним средством спасения Windows”.

Чтобы упростить процесс работы и сделать его более быстрым, Microsoft ввели посредника между “человеком” и “машиной”. Этим посредником стал пакетный файл (batch file). Запущенный на компьютере документ автоматически выполняет команды в CMD, ограждая пользователя от собственноручной работы. Процесс автоматизации назван пакетным сценарием (batch script).

Доступные форматы BAT файла:

Вне зависимости от того какой формат выбран при создании документа, функции от этого не изменятся.

В чем польза BAT файла?

Автоматизация. Если раньше вам приходилось долго и нудно “вбивать” сложные коды в окно командной строки, пришло время расслабиться! BAT файл экономит время пользователя не только при работе с CMD, но и при взаимодействии с другими системами ПК. Например, вы можете запланировать выключение компьютера через определенный промежуток времени. Этот способ применения пакетного файла хорошо подойдет геймерам, ставящим установку игру на ночь. Запланируйте отключение системы к моменту завершения установки и не опасайтесь за перерасход электроэнергии.

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

При создании BAT файла используется петля (for), условный оператор (if) и оператор управления (goto). Документ запускается либо с помощью командной строки, либо с помощью другого пакетного файла при использовании команды CALL.

Режимы BAT файла

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

Другой режим называется пакетным (batch mode). Он работает в классическом стиле и самостоятельно выполняет запрограммированные функции.

Режимы пакетного файла:

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

Используйте разные режимы в зависимости от ситуации.

Как запустить BAT файл в Windows 10?

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

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

  • Откройте директорию в которой лежит пакетный файл.
  • Определите название файла.
  • Откройте командную строку.
  • Введите название документа с его расширением.
    Например: HelloWorld.bat

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

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

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

Основы создания BAT файлов

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

Базовые команды:

  • title
    Используется для создания заголовка. Отображается в верхней части окна командной строки.
  • echo
    Режим вывода команд на экран. При включении, командная строка выведет на экран сообщение о совершенном действии. При отключении, соответственно, сообщения пропадут. Обратите внимание, что вам придется контролировать статус echo. Если команда активирована на строке 2 и вы решили отключить ее на строке 22, 20 промежуточных строк будут содержать включенный режим вывода команд.
  • pause
    Используется для остановки процесса.
  • exit
    Позволяет закрыть командную строку.
  • cls
    Используется для очистки окна командной строки.
  • ::
    Позволяет добавить комментарий к действию пакетного файла. Команда является пассивной и не влияет на общую работу документа.

Представленные выше команды — базовые и присутствуют во всех версиях Windows. Дополнительные команды появляются при установке соответствующего программного обеспечения. Например, если вы хотите автоматизировать задачи браузера Google Chrome, введите соответствующий код под названием chrome.

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

Руководство по созданию BAT файла

В этом разделе мы рассмотрим алгоритм создания пакетного файла, который подойдет для Windows 10, Windows 8. 1, Windows 7 и даже для Windows XP.

1. Откройте Блокнот. При желании, воспользуйтесь альтернативой стандартному приложению — Notepad++.

2. С помощью команду echo off временно отключите комментарии, чтобы не засорять окно.

3. Введите заголовок title My First Bat File.

4. Добавьте комментарий This comment will not appear in the command prompt.
Следует отметить, что по умолчанию в командной строке отображается только английский язык. Тем не менее, комментарий может быть на любом другом. Он не будет отображаться в CMD и останется только в блокноте. Комментарий — ваша личная заметка, чтобы не потеряться в коде.

5. Введите команду echo Test file executed.

6. Далее введите I am too lazy to write commands by myself.

7. И, наконец, команда paust, чтобы обозначить завершение процесса.

8. Сохраните документ, изменив формат с .txt на . bat.

Готовый пакетный файл имеет два вида:

В окне блокнота:

В окне командной строки:

Мониторинг систем с помощью BAT файла

В предыдущем разделе мы рассмотрели основы и самый примитивный вариант BAT файла. Хотя его возможности достаточно широки — полный функционал CMD. Давайте рассмотрим, как с помощью пакетного файла можно провести мониторинг систем компьютера.

Отчет об энергопотреблении:

1. Откройте Блокнот и создайте новый документ.

2. Введите команду powercfg /energy и перейдите к следующей строке.

3. Введите команду C:\WINDOWS\system32\energy-report.html.

4. Сохраните документ с названием energyreport.bat.

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

Отчет о состоянии батареи:

1. Откройте Блокнот и создайте новый документ.

2. Введите команду powercfg /batteryreport и перейдите к следующей строке.

3. Введите команду C:\Windows\System32\battery-report.html.

4. Сохраните документ под названием batteryreport.bat.

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

Модификация BAT файлов

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

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

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

Источник: www.starusrecovery.ru

.BAT-файлы | DIM565.RU

Расширение BAT — от слова Batch(пакет). То есть — это пакетные файлы или файлы с набором команд. Они использовались в MS DOS, используются в Windows 9x и Windows NT. Так как эти файлы обычные ASCII файлы, то Вы можете их править в любом текстовом редакторе, например NotePad. После запуска пакетного файла, программа — интерпретатор (как правило COMMAND.COM или CMD.EXE) читает его строка за строкой и последовательно исполняет команды.

Чтобы создать .bat файл:
1) Открыть Блокнот (ПУСК->Программы->Стандартные->Блокнот)
2) Ввести нужные команды
3) Сохранить с расширением . bat {Файл->Сохранить как…->Имя файла+bat расширение, например, example.bat ; Тип файла — «Все файлы»}

Список распространенных команд:

ATTRIB установка атрибута файла
BREAK прерывание программы
CD переход в новый каталог
CHKDSK проверка дисков
CLS очистка экрана
COMP сравнение дисковых файлов
COPY копирование файла
DATE установка даты
DIR просмотр каталогов
ECHO вывод сообщения на экран
ERASE (DEL) удаление файлов
FIND поиск данных
FORMAT форматирование диска
LABEL создание и замена метки диска
PRINT вывод на печать данных
PAUSE приостановка выполнения .bat файла
RENAME (REN) переименование файлов
REPLACE селективная замена и копирование файлов
RD удаление пустого каталога
TIME установка времени
TREE вывод дерева каталогов
TYPE вывод на дисплей содержимого файла
VERIFY проверка записи на диск
VOL вывод метки диска
XCOPY выборочное копирование групп файлов и каталогов
О любой команде можно узнать подробнее, если зайти в ПУСК->Выполнить->cmd->ввести: команду, пробел, /? Например, xcopy /?

Пример №1
Цель: Копирование текстового файла 1. txt, который находится на диске C на диск D в папку ARHIV :

COPY «C:\1.txt» «D:\ARHIV\1.txt»

Пример №2
Цель: Просмотреть содержимое файла license.txt, который находится на диске C:\Program Files\Celestia, после этого удалить его :

TYPE «C:\Program Files\OpenOffice.org 2.2\license.txt»
PAUSE
DEL «C:\Program Files\OpenOffice.org 2.2\license.txt»

Пример №3
Цель: Сделать, чтобы при запуске .bat файла создавалась резервная копия антивирусных баз и обновлений антивируса avast!, которая копировалась бы на Flash-накопитель
Во-первых, пускай перед копированием производится проверка, отличаются ли антивирусные базы на флэшке и на жестком диске(т.е нужно ли обновление)
Во-вторых, пускай перед копированием удаляются все файлы из папки Setup(на флэшке) и файл 400.vps(на флэшке) — так надежнее(и меньше места на флэшке остается)
В-третьих, антивирусные базы находятся в файле 400.vps, который лежит в C:\Program Files\Alwil Software\Avast4\DATA\
В-четвертых, все обновления программы находятся в C:\Program Files\Alwil Software\Avast4\Setup\
Теперь можно создавать . bat файл :

comp «C:\Program Files\Alwil Software\Avast4\DATA\400.vps» «J:\DataBackup\avast!Bases\400.vps»
del «J:\DataBackup\avast!Bases\Setup»
del «J:\DataBackup\avast!Bases\400.vps»
copy «C:\Program Files\Alwil Software\Avast4\Setup\» «J:\DataBackup\avast!Bases\Setup»
copy «C:\Program Files\Alwil Software\Avast4\DATA\400.vps» «J:\DataBackup\avast!Bases»
pause

P.S Я советую не использовать такой способ для копирования баз антивируса avast! — пишут, что он неэффективный. Лучше всего — скачивать официальный пакет обновлений

Пример №4
Цель: Запустить программу DVBdata через 3 секунды после запуска .bat. После-закрыть окно cmd.

ping -n 3 127.0.0.1 > NUL
start DVBdata.exe

Этот .BAT файл нужно поместить в папку с запускаемой программой

Автор статьи: Dim565
При копировании материалов, ссылка на источник (dim565.ru) обязательна!

forfiles | Microsoft Docs



  • Чтение занимает 2 мин

В этой статье

Выбирает и выполняет команду для файла или набора файлов.Selects and runs a command on a file or set of files. Эта команда чаще всего используется в пакетных файлах.This command is most commonly used in batch files.

СинтаксисSyntax

forfiles [/P pathname] [/M searchmask] [/S] [/C command] [/D [+ | -] [{<date> | <days>}]]

ПараметрыParameters

ПараметрParameterОписаниеDescription
/P <pathname>/P <pathname>Указывает путь, с которого следует начать поиск.Specifies the path from which to start the search. По умолчанию поиск начинается в текущем рабочем каталоге.By default, searching starts in the current working directory.
/M <searchmask>/M <searchmask>Выполняет поиск в файлах в соответствии с заданной маской поиска. Searches files according to the specified search mask. По умолчанию сеарчмаск имеет значение * .The default searchmask is *.
/S/SУказывает команде forfiles выполнить рекурсивный поиск в подкаталогах.Instructs the forfiles command to search in subdirectories recursively.
Ключей <command>/C <command>Выполняет указанную команду для каждого файла.Runs the specified command on each file. Строки команд должны быть заключены в двойные кавычки.Command strings should be wrapped in double quotes. Команда по умолчанию — "cmd /c echo @file" .The default command is "cmd /c echo @file".
/D [{+\|-}][{<date> | <days>}]/D [{+\|-}][{<date> | <days>}]Выбирает файлы с датой последнего изменения в течение заданного промежутка времени:Selects files with a last modified date within the specified time frame:

  • Выбирает файлы с датой последнего изменения позже или равным () + или ранее или равной ( ) указанной даты, где Дата соответствует формату mm/дд/гггг. Selects files with a last modified date later than or equal to (+) or earlier than or equal to () the specified date, where date is in the format MM/DD/YYYY.
  • Выбирает файлы с датой последнего изменения позже или равным ( + ) текущей датой плюс указанное число дней, а также до или менее ( ) текущей датой минус указанное число дней.Selects files with a last modified date later than or equal to (+) the current date plus the number of days specified, or earlier than or equal to () the current date minus the number of days specified.
  • Допустимые значения дней включают любое число в диапазоне от 0 до 32768.Valid values for days include any number in the range 0–32,768. Если знак не указан, + по умолчанию используется.If no sign is specified, + is used by default.
/?/?Отображает текст справки в окне cmd. Displays the help text in the cmd window.
ЗамечанияRemarks
  • forfiles /SКоманда аналогична dir /S .The forfiles /S command is similar to dir /S.

  • В командной строке можно использовать следующие переменные, как указано в параметре командной строки /c :You can use the following variables in the command string as specified by the /C command-line option:

    ПеременнаяVariableОписаниеDescription
    @FILEИмя файла.File name.
    @FNAMEИмя файла без расширения.File name without extension.
    @EXTРасширение имени файла.File name extension.
    @PATHПолный путь к файлу.Full path of the file.
    @RELPATHОтносительный путь к файлу.Relative path of the file.
    @ISDIRВозвращает значение TRUE, если тип файла является каталогом. Evaluates to TRUE if a file type is a directory. В противном случае эта переменная принимает значение FALSE.Otherwise, this variable evaluates to FALSE.
    @FSIZEРазмер файла в байтах.File size, in bytes.
    @FDATEМетка даты последнего изменения файла.Last modified date stamp on the file.
    @FTIMEОтметка времени последнего изменения файла.Last modified time stamp on the file.
  • Команда forfiles позволяет выполнять команду или передавать аргументы в несколько файлов.The forfiles command lets you run a command on or pass arguments to multiple files. Например, можно выполнить команду Type для всех файлов в дереве с расширением txt.For example, you could run the type command on all files in a tree with the .txt file name extension. Или же можно выполнить каждый пакетный файл (*. bat) на диске C с именем файла Myinput. txt в качестве первого аргумента.Or you could execute every batch file (*.bat) on drive C, with the file name Myinput.txt as the first argument.

  • Эта команда может:This command can:

    • Выберите файлы в абсолютную или относительную дату с помощью параметра /d .Select files by an absolute date or a relative date by using the /d parameter.

    • Создайте архивное дерево файлов с помощью переменных, таких как @FSIZE и @FDATE .Build an archive tree of files by using variables such as @FSIZE and @FDATE.

    • С помощью переменной можно отличать файлы от каталогов @ISDIR .Differentiate files from directories by using the @ISDIR variable.

    • Включите специальные символы в командную строку, используя шестнадцатеричный код для символа в формате 0x чч (например, 0x09 для вкладки).Include special characters in the command line by using the hexadecimal code for the character, in 0x HH format (for example, 0x09 for a tab).

  • Эта команда работает путем применения recurse subdirectories флага к средствам, предназначенным для обработки только одного файла.This command works by implementing the recurse subdirectories flag on tools that are designed to process only a single file.

ПримерыExamples

Чтобы вывести список всех пакетных файлов на диске C, введите:To list all of the batch files on drive C, type:

forfiles /P c:\ /S /M *.bat /C "cmd /c echo @file is a batch file"

Чтобы вывести список всех каталогов на диске C, введите:To list all of the directories on drive C, type:

forfiles /P c:\ /S /M * /C "cmd /c if @isdir==TRUE echo @file is a directory"

Чтобы получить список всех файлов в текущем каталоге, которые устарели по крайней мере один год, введите:To list all of the files in the current directory that are at least one year old, type:

forfiles /S /M *. * /D -365 /C "cmd /c echo @file is at least one year old."

Чтобы отобразить текстовый файл , устаревший для каждого из файлов в текущем каталоге, которые старше 1 января 2007, введите:To display the text file is outdated for each of the files in the current directory that are older than January 1, 2007, type:

forfiles /S /M *.* /D -01/01/2007 /C "cmd /c echo @file is outdated."

Чтобы вывести список расширений имен файлов в текущем каталоге в формате столбца и добавить вкладку перед расширением, введите:To list the file name extensions of all the files in the current directory in column format, and add a tab before the extension, type:

forfiles /S /M *.* /C "cmd /c echo The extension of @file is 0x09@ext"

Дополнительные ссылкиAdditional References

Cmd скрыть окно консоли. Как скрыть окно bat, если исполняется файл cmd

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

Предлагаю ознакомиться с предложениями моих партнёров

1. С помощью скрипта vbs. Вот таким скриптом можно скрытно запускать программы, bat файлы
, другие файлы.

Dim oShell
Set oShell = WScript.CreateObject («WSCript.shell»)
oShell.run «путь к приложению\имя приложения», 0
Set oShell = Nothing

Для тех, кто не в курсе, просто скопируйте текст в блокнот, поставте свои пути к приложению и имя приложения, сохраните под любым названием — но с расширением vbs, (например — скрываем окно start.vbs)

Пример: скрытно запускаем батник qwerty.bat с диска С

Dim oShell Set
oShell = WScript.CreateObject («WSCript. shell»)
oShell.run «C:\qwerty.bat», 0 Set
oShell = Nothing

Аналогичный код

Set WshShell = CreateObject(«WScript.Shell»)
RetCode = WshShell.Run(«C:\qwerty.bat», 0, False)

Можно в скрытом режиме запускать не только *.bat но и другие файлы. Например, Вы желаете запустить mp3 без окна проигрывателя, при условии использования Windows Media Player

Set WshShell = CreateObject(«WScript.Shell»)
RetCode = WshShell.Run(«C:\qwerty.mp3», 0, False)

Если у Вас mp3 привязан к другому проигрывателю, то добавьте в код wmplayer.exe

Set WshShell = CreateObject(«WScript.Shell»)
RetCode = WshShell.Run(«wmplayer.exe C:\qwerty.mp3», 0, False)

2. Утилита cmdow (саму утилиту поместить в C:\windows\system32)

Итак, консоль
командной строки присутствует во всех версиях операционных систем Windows. Ранние версии ОС поддерживали режим MS-DOS напрямую, что позволяло выполнять простые команды прямо из консоли. Представители же
семейства NT, такие как Windows 2000 или Windows Server 2003, работают уже совсем по другим принципам, однако MS-DOS в них тоже поддерживается, но через виртуальную машину (NT Virtual DOS Machine, NTVDM),
что позволяет контролировать и администрировать системные ресурсы прямо из консоли командного режима. В качестве интерпретатора командного режима выступает программа cmd.exe, запуск которой осуществляется
через меню «Start -> Run». Кроме того, для запуска консоли можно воспользоваться элементом меню «Start -> All Programs -> Accessories -> Command Prompt».

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

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

Сам администратор может выполнять как
одиночные команды, так и список команд, используя специальные управляющие символы (&, |). Например:

Команда 1 & Команда 2 — сначала будет выполнена Команда 1 и только затем Команда
2;
Команда 1 && Команда 2 — только после успешного выполнения Команды 1 будет запущена Команда 2.
Существует возможность перенаправить выводимый программой поток напрямую в
текстовый файл для дальнейшей обработки. Для этого необходимо использовать управляющий символ «>» и имя текстового файла. Пример вывода содержания текущего каталога в текстовый файл Report.txt
при помощи команды dir приведен ниже:
dir> Report.txt

Администратор может запустить несколько копий консоли, вызвав в командной строке программу cmd.exe. Использование вложенной консоли
позволяет работать с переменными окружения операционной системы без каких-либо последствий для всей системы в целом, так как после закрытия вложенной консоли изменения переменных окружения не сохраняются.
Для контроля над этим процессом используются команды setlocal, endlocal и set.

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

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

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

Кто здесь главный?

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

  • команды управления операционной
    системой — это такие команды, как shutdown или taskkill;
  • сетевые команды — net и ipconfig;
  • команды для мониторинга системы — tasklist и systeminfo;
  • команды для
    поддержки файловой системы — dir, mkdir, copy;
  • команды для обслуживания жестких дисков — defrag и diskpart;
  • команды для поддержки службы каталогов (Active Directories) —
    addrep и dsadd;
  • вспомогательные команды, в этот раздел входят различные утилиты для создания сценариев, настройки принтеров, работы с переменными окружения и т. д.

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

Команды мониторинга и диагностики

Для выявления неполадок в аппаратной
части и проблем с программным обеспечением предназначены команды мониторинга, такие как systeminfo и tasklist. Эти утилиты впервые появились только в операционной среде Windows Server 2003, поэтому администраторы
еще не в полной мере оценили функциональные возможности этих команд. Так, например, теперь не надо залезать в закладку «Свойства» иконки «Мой компьютер» — команда systeminfo
напечатает на экране консоли основную информацию обо всех компонентах системы с полной расшифровкой. Параметр /s выведет информацию о любом удаленном компьютере. Например, для выяснения конфигурации компьютера
TESTSERVER необходимо выполнить следующую команду:

Systeminfo /s TESTSERVER

А утилита tasklist покажет процессы, запущенные на вашем компьютере.

Утилита tasklist позволяет опрашивать
системы, соединенные в сеть. Параметр /v дает возможность получать подробные листинги с полезной информацией, в том числе и об именах пользователей, а параметр /т показывает процессы, загрузившие конкретный
dll-файл. Другая полезная утилита — openfiles — позволяет получить информацию обо всех открытых файлах локальной и удаленной операционной системы. В прежних версиях операционных систем Windows
приходилось использовать команду oh.exe, в современных версиях достаточно выполнить в командной строке консоли команду, которая устанавливает режим мониторинга для всех открытых файлов системы:

Openfiles
/local on

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

Openfiles

Команда openfiles с параметрами /query /v показывает,
какие пользователи запустили процессы, открывшие файлы. С помощью других параметров-ключей можно задать различный режим вывода информации.

Команды управления операционной системой

Windows Server 2003 предоставляет администраторам новые команды, которые помогают не только диагностировать систему, но и управлять ею. К таким командам можно отнести утилиту shutdown. В качестве параметров-ключей
этой утилиты можно использовать следующие:

  • /s — полное штатное отключение системы;
  • /р — выключение питания;
  • /f — завершение
    работы активных приложений;
  • /д — переход в режим пониженного энергопотребления;
  • /I — завершение сеанса без отключения компьютера.

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

Команда taskkill, аналог команды kill в операционных системах семейства *nix, позволяет «убить»
зависшее приложение. Совместно с командой tasklist эти утилиты представляют собой мощное средство для оперативного вмешательства в ход выполнения приложений, представляющих потенциальную угрозу для производительности
сервера. Из параметров этой команды необходимо отметить ключ/pid, который позволяет завершать процесс по его уникальному идентификатору, и ключ /im — для завершения приложения с указанным именем.
Следующий пример позволяет завершить процессы с идентификаторами 1000 и 1240:

Taskkill /pid 1000 /pid 1240

Команды для обслуживания жестких дисков

Оптимизацию жесткого
диска позволяет выполнить команда defrag. Утилита умеет дефрагментировать диски с файловой системой FAT, FAT32 и NTFS. Defrag одинаково хорошо работает как с динамическим типом диска, так и с базовым. Синтаксис
вызова этой команды следующий:

Defrag диск [ -a j [ -f ] [ -v ] [ -? ]

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

Команда fdisk уже не поддерживается ядром операционной системы Windows Server 2003. На смену ей пришла команда diskpart, также предназначенная для обслуживания
жестких дисков. Разбить диск на разделы, создать логические диски, удалить их — вот лишь некоторые задачи, решаемые этой утилитой. В основном команда diskpart ориентирована на работу со специальными
файлами-сценариями, в которых описаны процедуры обслуживания жестких дисков. Вот как выглядит вызов этой команды для файла-сценария Scriptl.txt:

Diskpart /s Scriptl.txt

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

Create partition logical size=2048


Сетевые команды

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

При помощи утилиты ipconfig пользователь может узнать сетевой адрес своего компьютера, а вызвав
эту команду с параметром /all, получить полную информацию о конфигурации сети на локальном компьютере. Параметр /renew позволяет изменить сетевые настройки без перезагрузки всей системы в целом.

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

Команды для поддержки службы каталогов

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

Для мониторинга такой сложной структуры в операционной системе предусмотрена команда dsquery, которая предназначена для расширенного поиска компонентов службы каталогов. Также этой командой
можно пользоваться для вывода информации о свойствах выбранных компонентов (ключ -attr). Параметры -scope, -subtree, -onelevel, -base определяют уровень вложенности поиска, а ключ -filter позволяет задействовать
фильтр поиска.

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

Dsmod user
«CN=TestUser,CN=Users,DC=bigtex,DC=net » -pwd [email protected]
-mustchpwd yes

Команда dsmove перемещает объект в пределах текущего домена. При помощи ключей -newname и -newparent можно задавать новое имя объекта и менять его местоположение.


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

Описание некоторых часто употребляющихся команд для работы с файлами и директориями представлено в таблице. Команду deltree, которая выполняла каскадное
удаление папок и файлов в них, заменяет теперь rmdir с ключом /s.

Маленькие секреты большой системы

Изменение приглашения для командной строки

Найдите
в реестре ключ: Создайте в этом ключе строковый параметр «PROMPT» с типом (REG_EXPAND_SZ) и присвойте одно
из следующих значений:

  • $В — вертикальная черта «I»;
  • $D — текущая дата;
  • $G — знак больше «>»;
  • $1_ — знак меньше «
  • $N
    — текущий диск;
    $Р — текущий диск и путь;
  • $Q — знак равно «=»;
  • $Т — текущее время;
  • $V — версия Windows;
  • $$ — знак
    доллара «$».

После перезагрузки вы увидите приглашение в определенном вами виде.

Автонабор команд

Для включения возможности автонабора команд по нажатию
клавиши «Tab», найдите в реестре ключ:

Затем установите значение параметра CompletionChar равным 9, что соответствует идентификатору
клавиши «Tab», закройте реестр и перезагрузите компьютер. В окне консоли, набирая часть имени команды, вы можете теперь нажать клавишу «Tab», и Windows автоматически подставит необходимую
команду.

Изменение цвета консоли

Найдите в реестре ключ:

Измените параметр DefaultCoior. Значение -F0 определит
вывод черного текста на белом фоне, а значение IE удивит вас желто-синей расцветкой консоли.

Быстрый запуск консоли командной строки из контекстного меню

Найдите в реестре
ключ:

Добавьте в него подразделы «CommandPrompt -> Command». Параметру Default ключа Command присвойте значение «cmd.exe /k cd «%1″».

Параметру
Default ключа Command Prompt присвойте значение «Open Command Prompt».

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

Заключение

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

В статье описываются различные способы того, как спрятать окно cmd во время исполнения batch файла.

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

Как миновать защиту UAC? Обратитесь к статье

Как спрятать окно cmd. Можно ли это сделать средствами самого батника?

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

Запустить batch файл незаметно. Только Windows.

В самом файле “безумству кода” вы пойте песню сами. Я же предложу оптимизировать его содержание для максимально тихой работы. Здесь есть важный момент: чем короче сам код, тем больше вероятность того, что окно консоли появится на короткое время. Если объём большой или прописывается сразу несколько команд, окно может привлечь внимание.

Для примера возьму код скрипта, который позволяет немного (конкретно, характеристики процессора в Свойствах системы

). Делается это на время сеанса Windows: после перезагрузки всё станет на свои места.

Вобщем, имеем следующий код батника:

REGEDIT4
; @ECHO OFF
; CLS
; REGEDIT. EXE /S «%~f0»
; EXIT

«ProcessorNameString»=»Intel(R) Core(TM) i112-3470 CPU @ 800.5GHz »

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

Однако его запуск сопровождается:

  • появлением окна консоли cmd
  • появлением окна UAC с подтверждением с проделываемыми изменениями (задача, как видите, усложнилась сама по себе, ибо меняется системная информация)

перед исполнением батника появляется окно UAC

От первого окошка я предлагаю вам избавиться с помощью следующего скрипта, оформленного уже в очередной, vbs-файл
. А вот и к нему скрипт (смотрите – мой путь к файлу C:\spec. bat
):

«HideBat.vbs
CreateObject(«Wscript.Shell»).Run «C:\spec.bat», 0, True

Назову любым именем с расширением .vbs
. Теперь работа батника
по нажатии на vbs
-ник сопровождается лишь появлением окна Контроля учётных записей
: дело в том, что изменения, проделываемые батником касаются реестра, а система логично не пропускает это бесконтрольно. Как – это тема отдельной статьи:

Однако мы немного отвлечёмся от темы статьи и закончим начатое, создав для файла сокрытия консоли (vbs-файла
) специальный ярлык. В поле Расположения объекта укажем путь в формате:

Wscript путь-к-vbs
-нику путь-к-bat
-нику

Ярлык готов (можете сменить его рисунок через Свойства ярлыка
). Его можно закинуть на выбор в папку Автозагрузки, поместить в Планировщик Windows или запускать двойным щелчком мыши. Окна консоли не будет.

Как спрятать окно cmd? Специальные программы.

Их немало, они легковесны и просты в использовании. Минус – их нужно скачивать, и некоторые устанавливать. Приведу самые популярные из них:

Утилита отечественного производителя. Нужно покупать, стоимости не знаю. Однако с её помощью можно скрыть окно раз и навсегда, и не важно, требуется ли подтверждение UAC или нет – его тоже можно скрыть:

Для 32-х и 64-х битных версий. Установки не требует, поставляется в виде исполнительного файла, который при запуске (от имени админа) сразу просится в корневой каталог Windows. Согласимся, и она теперь с нами:

Утилита много чего умеет, в том числе менять уровень звука, открывать лотки привода и т.д. Для нашего случая, чтобы спрятать окно cmd , можно было бы просто ввести команду в виде:

Nircmd elevatecmd exec hide путь-к-файлу

От окна UAC не избавились (elevatecmd exec и есть часть команды с запросом на UAC), но нам и не обещалось. И постоянно прописывать в консоли полный путь к файлу неудобно, потому сразу создадим ярлык:

Nircmd cmdshortcut «~$folder.desktop$» «Батник» elevatecmd exec hide путь-к-файлу

Как спрятать окно cmd: batch превратился в exe.


Тоже вариант. Это уже музыка высших сфер. Кому эта утилита неизвестна, знакомьтесь – пригодится: Bat To Exe Converter
. Как вы поняли по названию, превращает батник в исполнительный файл с расширением.exe. Качаем, устанавливаем, пользуемся:

Успехов.

Прочитано:
546

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

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

Список всех установленных драйверов

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

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

Выполнить несколько команд последовательно

Если вы не хотите ждать пока очередная команда закончит работы, прежде чем вы могли бы запустить следующую, существует способ ввести несколько команд, так, чтобы они были выполнены одна за другой. Все, что вам нужно сделать, это добавить «&&» между командами, чтобы разделить их следующим образом
command1
&&
command2
&&
command3

. Теперь, когда команда command1 будет выполнена, запустится command2, а когда отработает она — запуститься command3.

Получить справку по любой команде

Если вы не можете понять, что делает конкретная команда, или каковы варианты ее использования, вам не придется искать эту информацию в Интернете. Командная строка предоставляет полную информацию о том, что делает каждая команда, и может даже привести примеры использования команды (если это возможно). Просто наберите
/
?

после интересующей вас команды, например
assoc
/
?

.

Узнать IP-адрес веб-сайта

Если вы хотите узнать IP-адрес любого веб-сайта, вы можете легко сдлеать это прямо из командной строки. Для этой цели наберите
nslookup

, например,
nslookup
coderjob
.ru

, и вы увидите его IP-адрес.

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

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

  • F1
    — Он вставляет команду, которая была последней выполненной с помощью командной строки, по одному символу команды за одно нажатие.
  • F2
    – Вставляет часть команды, которая была выполнена последней в командной строке, однако, попросит вас ввести символ до которого вы хотите вставить команду. Z.
  • F7
    — Отображает список ранее используемых команд в виде диалога.
  • F8
    — Вставляет в командную строку недавно выполненные команды. Обратите внимание, что в отличие от F5 в том, что происходит бесконечное циклическое переключение между ранее исполненными командами.
  • F9
    — Как уже упоминалось выше, командная строка хранит список всех выполненных команд. Этот список пронумерован от 0 до 9. При нажатии клавиши F9, появляется диалог с приглашением ввести номер команды, которую вы хотите использовать повторно.

Кроме того, если вы хотите прекратить выполнение команды до того, как она сама завершит работу, вы может использовать комбинацию клавиш Ctrl + C
.

Запустить командную строку от имени администратора без использования мыши

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

  • Введите cmd в поле поиска меню ‘Пуск’ и нажмите одновременно Ctrl + Shift + Enter.
  • Создайте ярлык для cmd.exe. Щелкните правой кнопкой мыши файл ярлыка и нажмите кнопку Свойства. На вкладке Ярлык нажмите на кнопку ‘Дополнительно’. Появится новое диалоговое окно. Выставте флажок Запуск от имени администратора и нажмите кнопку ОК. Затем нажмите кнопку OK, чтобы закрыть окно Свойства ярлыка. Теперь, когда вы захотите, открыть окно командной строки с правами администратора, вам надо будет только дважды щелкнуть созданный ярлык.
Автодополнение команд клавишей Tab

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

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

Например, вы хотите изменить каталоги в какую-нибудь папку в папке Windows, но вы не уверены, как она называется. Введите команду
cd
C
:
\
Windows
\

, а затем нажимайте клавишу Tab до тех пор, пока не увидите папку, которую вы ищете.

Узнать IP-адрес и имя своего компьютера в локальной сети

С помощью одной команды командной строки вы можете легко получить основную информацию о вашем подключении к сети, например такую как IP-адрес, маска подсети и адрес шлюз по умолчанию. Для этого введите в командной строке
ipconfig
/
all

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

Кроме того, если IP-адрес вашему компьютеру назначается динамически (т.е. в вашей сети исползуется DHCP) вы может принудительно обновить ваш IP-адрес выполнив следюущую команду:
ipconfig
/
release
&
ipconfig
/
renew

Получить информацию о сетевых дисках и папках

Введите
net
use

в командной строке, и вы увидите вам все сетевые диски, к которым вы подключены. Чтобы узнать, какие папки на вашем компьюетер являются доступными из сети, введит команду
net
share

.

Узнать модель и серийный номер вашего компьютера

Введите
wmic
computersystem
get
model

, чтобы выяснить модели компьютера, на котором вы работаете. Кроме того, вы можете выяснить серийный номер вашего компьютера введя следующую команду:
wmic
bios
get
serialnumber

.

Открыть проводник Windows из командной строки

Чтобы открыть проводник Windows находясь в командной строке, введите команду
start
.

и нажмите Enter.

Выключение и перезагрузка компьютера из командной строки

Для выключения кмопьютера из командной строки вам необходимо выполнить следующую команду:
shutdown
/
s
/
t
60

и система будет выключена через одну минуту (за это отвечает ключ /t с количеством секунд задержки — 60).
Для выключения удаленного компьютера, работающего на Windows, вам надо выполнять команду следующего вида:
shutdown
/
s
/
t
60
/
f
/
L
/
m
\
\
192. 168.1.55

Чтобы перезагрузить системы вам надо выполнить команду
shutdown

r

t
0

.

Запустить любой из аплетов Панели Управления
Имя аплета Панели управленияКоманда
Центр специальных возможностейaccess.cpl
Добавление нового устройстваhdwwiz.cpl
Программы и компонентыappwiz.cpl
Администрированиеcontrol admintools
Центр обновления Windowswuaucpl.cpl
Диспетчер сертификатовcertmgr.msc
Управление компьютеромcompmgmt.msc
Панель управленияcontrol
Дата и времяtimedate.cpl
Диспетчер устройствdevmgmt.msc
Дефрагментация дисковdfrg.msc
Управление дискамиdiskmgmt.msc
Персонализация рабочего столаcontrol desktop
Разрешение экранаdesk. cpl
Просмотр событийeventvwr.msc
Свойства папкиcontrol folders
Шрифтыcontrol fonts
Редактор локальной групповой политикиgpedit.msc
Клавиатураcontrol keyboard
Локальная политика безопасностиsecpol.msc
Локальные пользователи и группыlusrmgr.msc
Мышьcontrol mouse
Сетевые соединенияncpa.cpl
Монитор ресурсовperfmon.msc
Электропитаниеpowercfg.cpl
Устройства и принтерыcontrol printers
Язык и региональные стандартыintl.cpl
Планировщик заданийcontrol schedtasks
Центр поддержкиwscui.cpl
Службыservices.msc
Общие папкиfsmgmt. msc
Звукmmsys.cpl
Свойства системыsysdm.cpl

BAT файл для открытия CMD в текущем каталоге

У меня есть много скриптов, с которыми я взаимодействую из командной строки. Каждый раз, когда мне нужно их использовать, я должен открыть окно командной строки и скопировать + вставить и CD в путь к каталогу, в котором они находятся. Это утомительно (они находятся в довольно глубокой файловой системе, поэтому вводя полный путь боль, копия + вставка лучше, но не много). Я попытался создать файл .BAT, который я мог бы дважды щелкнуть по нему, чтобы открыть новое окно командной строки в папке, где есть файл .bat, но он не работает. Он открывает новое окно, но рабочий каталог не является каталогом, в котором находится файл .bat. Вот что я получил после многоголоджинга (мои умные навыки не так велики):

cd %CD%
cmd.exe

Я знаю, когда я использовал Linux, у Konqueror была функция «Command-line window здесь» и что эффект, который я пытаюсь получить в Windows.

ОТВЕТЫ

Ответ 1

Создайте файл с именем open_dos_here.cmd со следующими строками:

%~d1
cd "%~p1"
call cmd

Поместите этот файл в любую папку.
Затем перейдите в папку «Отправить» (Win + E; Alt + D; shell:sendto; Enter).
Создайте ярлык, чтобы указать на это open_dos_here.cmd

Затем в любой папке выберите любой файл или подпапку. Щелкните правой кнопкой мыши и выберите «Отправить в», а затем выберите open_dos_here.cmd, чтобы открыть DOS в этой папке.

Ответ 2

вы, вероятно, захотите сделать это:

cd /d %~dp0
cmd.exe

это установит ваш текущий каталог в каталог, в котором у вас есть пакетный файл в

Ответ 3

Вы можете просто ввести cmd в адресную строку в проводнике и запустить его в этом пути. Аналогично для PowerShell.

Ответ 4

В качестве более общего решения вы можете проверить Microsoft Power Toy для XP, который добавляет параметр «Открыть командное окно здесь» при щелчке правой кнопкой мыши: http://www. microsoft.com/windowsxp/downloads/powertoys/xppowertoys.mspx

В Vista и Windows 7 вы получите эту опцию, если вы удерживаете shift и щелкните правой кнопкой мыши (это встроено).

Ответ 5

Там более простой способ

start /d "folder path"
Ответ 6

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

Лучше добавить эту строку в свой пакетный файл:

REM Change Current Directory to the location of this batch file 
CD /D %~dp0

если вы полностью не определили все свои пути.

Ответ 7

Вы можете добавить запись в контекстное меню через реестр:

  • Перейдите в свой реестр, чтобы
    HKEY_LOCAL_MACHINE/Software/Classes/Folder/Shell
    и создайте ключ под названием «Командная строка» без кавычек.

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

  • Создайте новый ключ в своей недавно созданной командной строке с именем «command» и установите для строки по умолчанию

    cmd.exe /k pushd %1
    

Вам может потребоваться добавить %SystemRoot%\system32\ перед cmd.exe, если исполняемый файл не может быть найден.

  • Изменения должны произойти немедленно. Щелкните правой кнопкой мыши папку и появится новый пункт меню.

Также см. http://www.petri.co.il/add_command_prompt_here_shortcut_to_windows_explorer.htm

Ответ 8

Другим решением является использование ярлыка файла cmd.exe вместо пакетного файла.

Отредактируйте ярлык начать в до % ~ dp0.

Вы достигаете того же, за исключением того, что у него есть значок Cmd (и вы можете изменить это).

Некоторым людям не нравится нажимать на пакетные файлы, не зная, что в них, а некоторые корпоративные сетевые диски имеют запрет на файлы . bat…

Ответ 9

Простейшая команда для этого:
start

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

Ответ 10

Самый простой способ в проводнике — Shift + щелкнуть правой кнопкой мыши по папке или на пустом месте в папке и нажать Open command prompt here.

CMD затем запустится в этой папке

Я должен сказать, что я не уверен, что он работает для Windows Vista и ниже, но он, безусловно, работает для Windows 7, 8, 8.1 и 10.

Ответ 11

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

Ответ 12

Немного поздно в игре, но если я правильно понимаю ваши потребности, это поможет людям с той же проблемой.

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

Первое решение:

  • Нажмите «Пуск»
  • Щелкните правой кнопкой мыши «Компьютер» (или «Мой компьютер» )
  • Нажмите «Свойства»
  • Слева щелкните «Дополнительные настройки системы»
  • Нажмите «Переменные среды»
  • В поле «Системные переменные» прокрутите вниз и выберите «PATH»
  • Нажмите «Изменить»
  • В поле «Значение переменной» прокрутите весь путь вправо
  • Если там еще нет двоеточия (;), добавьте его.
  • Вставить в путь к файлу, который вы скопировали ранее.
  • Завершить с помощью двоеточия.
  • Нажмите «ОК»
  • Нажмите «ОК» еще раз
  • Нажмите «ОК» в последний раз

Теперь вы можете использовать любой из своих скриптов, как если бы вы уже были этой папкой.

Второе решение: (может быть легко сопряжено с первым для дополнительной полезности)

На рабочем столе создайте пакетный файл со следующим контентом.

@echo off
cmd /k cd "C:\your\file\path"

Это откроет окно командной строки, подобное тому, что вы пытались сделать.


Для тонны информации о командах Windows здесь: http://ss64.com/nt/

Ответ 13

этот код работает для меня
назовите его cmd.bat

@echo off
title This is Only A Test
echo.
:Loop
set /p the="%cd%"
%the%
echo.
goto loop
Ответ 14

Создайте новый файл startCmdLine.bat в своем каталоге и поместите в него эту строку

call cmd

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

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

Ответ 15

Ссылаясь на ответ @Chris,

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

cd /d %~dp0..
<OTHER_BATCH_COMMANDS>
cmd.exe

Чтобы понять работу команды cd /d %~dp0.., обратитесь к ссылке

Что означает команда cd/d% ~ dp0 в Windows

Ответ 16

вы можете попробовать:

shift + right click

затем нажмите «Открыть командную строку» здесь

windows — Как спать в батнике?

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

По возможности обязательно используйте тайм-аут . Но, как отмечено в комментариях, это не всегда вариант (например, в неинтерактивном режиме). После этого я согласен, что ping «kludge», пожалуй, следующий лучший вариант, поскольку он очень простой. Тем не менее, я предлагаю другой вариант… встроить VB Script .

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

Вот один лайнер для создания временного сценария, его выполнения и удаления. Скрипт спит за вас (в этом примере 3 секунды).

  эхо WScript.Sleep 3000>% temp% \ sleep.vbs & cscript% temp% \ sleep.vbs% sleepMs% // B & del% temp% \ sleep.vbs
  

Вот в основном то же самое, но немного по-другому:

  установить sleepMs = 3000 и установить sleepVbs =% temp% \ sleep. vbs & echo WScript.Sleep WScript.Arguments (0)>% sleepVbs% & cscript% sleepVbs%% sleepMs% // B & del% sleepVbs%
  

И наконец, как ping , CScript сам имеет параметр тайм-аута! Итак, если вы введете бесконечный цикл в скрипт, вы можете позволить интерпретатору принудительно установить продолжительность.Обратите внимание, что это «занятая» операция, которая съедает процессор, и поэтому я не рекомендую ее, когда вы можете использовать процедуру WScript.Sleep , но я представляю ее как концептуальный вариант для полноты картины:

  установить sleepSec = 3 и установить sleepVbs =% temp% \ sleep.vbs & echo While True>% sleepVbs% & echo Wend >>% sleepVbs% & cscript% sleepVbs% // B // T:% sleepSec% & del % sleepVbs%
  

windows — Команда для запуска .bat файла

"F: \ - Большие пакеты - \ kitterengine \ Common \ Template.bat " может предшествовать call (см. call /? ). Или Cd / d" F: \ - Big Packets - \ kitterengine \ Common \ "& Template.bat .


Шпаргалка CMD

  • Cmd.exe

  • Получение помощи

  • Пунктуация

  • Именование файлов

  • Запуск программ

  • Ключи

CMD.exe

Первое, что нужно запомнить, это способ работы с компьютером.Так мы поступали до того, как WIMP (Windows, значки, мышь, всплывающие меню) стали обычным явлением. Он обязан своим корнями CPM, VMS и Unix. Он использовался для запуска программ, копирования и удаления файлов. Также вы можете изменить время и дату.

Для получения справки по запуску CMD введите cmd /? . Вы должны запустить его либо с переключателя / k , либо с / c , если только вы не хотите просто ввести его.

Получение помощи

Для общей помощи. Введите в командной строке Help .Для каждой перечисленной команды введите help (например, help dir ) или /? (например, dir /? ).

У некоторых команд есть подкоманды. Например schtasks / create /? .

Справка команды NET необычная. Набрав net use /? — краткая справка. Введите net help, используйте для получения полной справки. То же самое и в корне — net /? также является краткой справкой, используйте net help .

Ссылки в справке по новому поведению описывают изменения CMD в OS / 2 и Windows NT4 на текущую CMD, которая есть в Windows 2000 и более поздних версиях.

WMIC — многоцелевая команда. Введите wmic /? .


Пунктуация

  & разделяет команды по строке.

&& выполняет эту команду, только если уровень ошибки предыдущей команды равен 0. 

|| (не используется выше) выполняет эту команду, только если предыдущая команда
errorlevel НЕ 0

> вывод в файл

>> добавить вывод в файл

<ввод из файла

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

"параметры с пробелами должны быть заключены в кавычки

+ используется с копией для объединения файлов. НАПРИМЕР. скопировать файл1 + файл2 новый файл

, используется с копией для обозначения отсутствующих параметров. Это обновляет файлы
дата изменения. НАПРИМЕР. copy / b file1 ,,

% variablename% встроенная или заданная пользователем переменная среды

! имя_переменной! переменная среды, заданная пользователем, расширяется при выполнении
время, повернутое командой SelLocal EnableDelayedExpansion

% <число> (% 1) n-й параметр командной строки, переданный пакетному файлу.% 0
это имя пакетного файла.

% * (% *) всю командную строку.

% CMDCMDLINE% - расширяется до исходной командной строки, которая вызвала
Командный процессор (из набора /?). 

%  или %%  (% A или %% A) переменная в цикле for.
Одиночный знак% в командной строке и двойной знак% в пакетном файле.

\\ (\\ servername \ sharename \ folder \ file.ext) доступ к файлам и папкам через именование UNC.

: (win.ini: streamname) обращается к альтернативному Steam. Также отделяет привод от остальной части пути.

. (победить.ini) ПОСЛЕДНЯЯ точка в пути к файлу отделяет имя от расширения

. (dir. \ *. txt) текущий каталог

.. (cd ..) родительский каталог


\\? \ (\\? \ c: \ windows \ win.ini) Когда путь к файлу имеет префикс \\? \ filename, проверки отключены.
  

Именование файлов

  <>: "/ \ | Зарезервированные символы. Не могут использоваться в именах файлов.



Зарезервированные имена. Они относятся к устройствам, например,

скопировать имя файла con

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

КОН, PRN, AUX, NUL, COM1, COM2, COM3, COM4,

COM5, COM6, COM7, COM8, COM9, LPT1, LPT2,

LPT3, LPT4, LPT5, LPT6, LPT7, LPT8 и LPT9

CONIN $, CONOUT $, CONERR $

--------------------------------

Максимальная длина пути 260 символов
Максимальная длина пути (\\? \) 32 767 символов (приблизительно - некоторые редкие символы используют 2 символа хранения)
Максимальная длина имени файла 255 символов
  

Запуск программы

См. Начало /? и звоните /? за помощь по всем трем направлениям.

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

Если полный путь не указан, Windows просматривает

  1. Каталог, из которого загружено приложение.

  2. Текущий каталог для родительского процесса.

  3. Windows NT / 2000 / XP: 32-разрядный системный каталог Windows.Использовать
    GetSystemDirectory, чтобы получить путь к этому каталогу. В
    имя этого каталога — System32.

  4. Windows NT / 2000 / XP: 16-разрядный системный каталог Windows. Здесь нет
    функция, которая получает путь к этому каталогу, но это
    искал. Имя этого каталога — System.

  5. Каталог Windows. Используйте функцию GetWindowsDirectory, чтобы получить
    путь к этому каталогу.

  6. Каталоги, перечисленные в переменной среды PATH.

Укажите имя программы

Это стандартный способ запуска программы.

  c: \ windows \ notepad.exe
  

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

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

Используйте команду запуска

Start запускает программы нестандартными способами.

  start "" c: \ windows \ notepad.exe
  

Start запускает программу и не ждет. Консольные программы запускаются в новом окне. Использование переключателя / b принудительно помещает консольные программы в одно и то же окно, что сводит на нет основную цель запуска.

Start использует графическую оболочку Windows — так же, как при вводе WinKey + R (диалоговое окно «Выполнить»). Попробуйте

  стартовая оболочка: кеш
  

Имена программ, зарегистрированные в HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ App Paths , также можно вводить без указания полного пути.

Также обратите внимание, что первый набор кавычек, если они есть, ДОЛЖЕН быть заголовком окна.

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

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

Другие имена файлов

Ввод имени файла, отличного от программы, аналогичен двойному щелчку по файлу.


Ключи

Ctrl + C выходит из программы без выхода из окна консоли.

Для других ключей редактирования введите Doskey /? .

Также не указано

Командная строка в Windows: основы работы с пакетными файлами

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

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

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

Это простые текстовые файлы, содержащие несколько
строки с командами, которые выполняются последовательно, одна за другой.
Эти файлы имеют специальное расширение BAT или CMD. Файлы этого типа
распознается и выполняется через интерфейс (иногда называемый оболочкой)
предоставляется системным файлом, который называется интерпретатором команд.В Windows XP / Vista
интерпретатором команд является файл cmd.exe. Большой ассортимент
универсальные команды, доступные в Windows XP / Vista / 7, делают командные файлы мощным
инструмент.

Создание командного файла состоит не более чем из открытия любого текста
редактор как аксессуар Блокнот ,
ввод нескольких строк, содержащих команды, и сохранение файла с расширением
BAT или CMD. (Расширение CMD ограничено новыми системами Windows и
не распознается в системах Windows 9x / Me.В Windows XP, Vista и 7 мало
практическая разница между двумя расширениями.) Не используйте Wordpad или Word , если только
вы очень осторожны, чтобы сохранить все файлы в чистом текстовом формате. Команды
сами по себе часто довольно просты и нет необходимости изучать программирование
язык. Желающие могут изучить тонкости, доступные с
ветвления и цикла, но здесь я ограничусь обсуждением некоторых простых
приложение для повседневных задач.В центре внимания будет экономия времени и усилий.
для некоторых рутинных вещей, таких как обслуживание системы и простое управление файлами.

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

Создание командного файла

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

Первая строка командного файла часто состоит из этой команды @echo off By
по умолчанию командный файл будет отображать свои команды при запуске. В
цель этой первой команды — выключить этот дисплей. Команда «эхо
off «выключает отображение всего скрипта, кроме» echo
выключенный»
сама команда. Знак «@» впереди делает команду
применимо и к самому себе. Этот нюанс не так уж и важен в
контекст здесь, но я упоминаю об этом, потому что это часто встречается в сценариях.Скрипты
мы будем обсуждать очень кратко и опускаем
эта строка не будет иметь большого значения. Однако на самом деле
Из хорошей практики мы введем это в наши скрипты.

В нашем первом примере пакетного файла будут перечислены все файлы в папке.
и поместите список в новый текстовый файл. Мы будем использовать команду каталога «dir»,
обсуждается
на другой странице. Откройте Блокнот и введите строку «@echo off» (без
цитаты). Затем введите другую строку dir
«C: \ Program Files»> C: \ list_of_program_files. txt

при условии, что ваша папка Program Files находится на диске C:). Это будет
дайте нам двухстрочный файл @echo off dir
"C: \ Program Files"> C: \ list_of_program_files.txt
Теперь сохраните
этот двухстрочный файл как «listprograms.bat» (без кавычек) некоторым
удобное расположение. Убедитесь, что Блокнот сохраняется как «Все файлы» и
не как текстовый файл. См. Рисунок ниже.

В примере сценария проиллюстрированы три важных момента. Обратите внимание, что
полные пути используются для файлов, включая букву диска.Также обратите внимание
кавычки вокруг «C: \ Program Files». Пути необходимо указывать всякий раз, когда
в имени файла или папки есть пробел. Наконец, обратите внимание на перенаправление
символ «>» что
используется для отправки вывода в файл вместо экрана.

Все, что нужно сделать, чтобы использовать файл
это дважды щелкнуть по нему. Затем файл C: \ list_of_program_files.txt будет
быть создан.

Более общая версия с аргументами

Файл, который мы обсуждали, ограничен перечислением одного конкретного
папку и поместить список в один конкретный файл. Однако это легко
чтобы файл мог отображать любую папку, которую мы хотим, и поместить
перечислим куда угодно. Пакетные файлы могут использовать аргументы или данные, которые
ввод от пользователя. В процессе используются заполнители формы
% 1,% 2, они заменяются в сценарии нашими входными данными. Этот тип
ситуации нельзя щелкнуть напрямую, но следует запустить в команде
Подсказка. Новый командный файл будет @echo off dir% 1>
% 2
Enter
в Блокноте и сохраните как «список макетов.bat «. Чтобы запустить файл, откройте
в командной строке и введите {путь} makelist somefolderwhere \ list.txt , где somefolder
любую папку (с полным путем), которую вы хотите указать в где-нибудь \ list. txt . Сейчас же
у вас есть небольшая программа, которая будет отображать содержимое папки всякий раз, когда
ты хочешь. Если вам нужен список всех подпапок, используйте команду dir
/ s% 1>% 2
Если вам нужен список, включающий только файлы определенного
типа файлов MP3, например, используйте dir% 1 \ *.mp3>% 2
Строка выше иллюстрирует использование подстановочного знака «*». Способность
использование подстановочных знаков значительно расширяет возможности пакетных файлов.

Жизнь будет проще, если вы поместите все пакетные скрипты в папку, которая
на пути
среда.

Заявление Rem

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

Другие примеры

После обсуждения на другой странице он
легко создавать командные файлы для типичного обслуживания. Создавать
очень простой сценарий резервного копирования, используйте xcopy.
Код может быть xcopy% 1% 2 / d / s Это обновит все файлы
в папке источника ввода% 1 и ее подпапках
путем копирования в резервную папку% 2. На практике полезная резервная копия
script, вероятно, потребуется еще несколько переключателей, обсуждаемых на xcopy.

Снова после предыдущего обсуждения
команда «del», файл для удаления всех временных файлов с расширением
TMP может содержать del% 1 \ *. Tmp

Запрос на ввод данных пользователем

Вы также можете взаимодействовать с пользователем и запрашивать ввод данных. В старой DOS была команда «Выбор» для очень ограниченного взаимодействия, но в Windows XP / Vista она была заменена более универсальной командой «set / p». Синтаксис: set / p variable = [строка] «Переменная» — это имя переменной, которая будет назначена данным, которые вы хотите, чтобы пользователь вводил. «Строка» — это сообщение, которое пользователь увидит как подсказку. При желании «строку» можно не указывать. Вот пример, в котором пользователя просят ввести свое имя: set / p name = Как вас зовут? Это создаст переменную% name%, значение которой будет тем, что вводит пользователь. Обратите внимание, что пользователь должен нажать клавишу «Enter» после ввода ввода.

(Команда «Выбор» вернулась как более мощная версия в Vista. )

Дополнительная литература

Это простые примеры, и эта страница не претендует на то, чтобы все объяснить
насчет командных файлов. Идея состоит в том, чтобы показать, насколько они просты, и заинтриговать
читатели, чтобы глубже изучить эту тему. Можно создать еще более мощные командные файлы, добавив простые решения и методы многократного выполнения одного и того же действия. Далее обсуждается ветвление с помощью «If» и «Goto»; Использование «Для» для выполнения повторяющихся задач рассматривается на третьей странице.

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

Написание пакетного сценария Windows

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

Простой командный файл будет

ЭХО ВЫКЛ.
ECHO GeeksforGeeks
ПАУЗА
 

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

В приведенном выше сценарии ECHO off очищает консоль, скрывая печать команд в командной строке, ECHO выводит на экран текст «GeeksforGeeks», а затем ждет, пока пользователь нажмет клавишу, чтобы программа могла быть прекращено.

Некоторые основные команды командного файла

Типы «пакетных» файлов в Windows

  1. INI (* .ini) — файл инициализации. Они устанавливают переменные по умолчанию для системы и программ.
  2. CFG (* .cfg) — это файлы конфигурации.
  3. SYS (*.sys) — Системные файлы, иногда можно редактировать, в основном скомпилированный машинный код в новых версиях.
  4. COM (* .com) — Командные файлы. Это исполняемые файлы для всех команд DOS. В ранних версиях для каждой команды был отдельный файл. Сейчас большинство из них находится внутри COMMAND.COM.
  5. CMD (* .cmd) — это командные файлы, используемые в операционных системах NT.

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

@echo off
Rem Вывод всех файлов в каталоге Program files
каталог "C: \ Program Files"> C: \ geeks_list.текст
эхо "Готово!"
 

Теперь, когда мы запускаем этот пакетный сценарий, он создает файл с именем geeks_list.txt в вашем каталоге C: \, отображая все имена файлов / папок в C: \ Program Files

Еще один полезный пакетный сценарий, который можно написать для диагностики вашей сети и проверки ее производительности.

:: Этот командный файл проверяет наличие проблем с сетевым подключением.
ЭХО ВЫКЛ.
:: Просмотр сведений о сетевом подключении
ipconfig / все
:: Проверьте, есть ли geeksforgeeks.com доступен
пинг geeksforgeeks.com
:: Запустите traceroute, чтобы проверить маршрут до geeksforgeeks.com
tracert geeksforgeeks.com
ПАУЗА
 

Этот сценарий отображает,

Этот сценарий дает информацию о текущей сети и некоторую информацию о сетевых пакетах. «ipconfig / all» помогает просматривать информацию о сети, а «ping» и «tracert» для получения информации о каждом пакете. Узнайте о ping и traceroute здесь.

Как запустить сценарий — Windows CMD

Как запустить сценарий — Windows CMD — SS64.com

Чтобы подготовить новый пакетный сценарий, сохраните файл как обычный текст ASCII с расширением файла .CMD

Запустить командный файл

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

Из меню «Пуск»: ПУСК> ВЫПОЛНИТЬ c: \ path_to_scripts \ my_script.cmd, ОК

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

«c: \ путь к скриптам \ мой скрипт.cmd «

Откройте новое приглашение CMD, выбрав START> RUN cmd, OK

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

C: \ Batch> Demo.cmd
или же

C: \ Batch> c: \ path_to_scripts \ my_script.cmd param1 param2

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

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

Также можно запускать пакетные сценарии со старым (стиль Windows 95) расширением .BAT, но имейте в виду, что они будут работать в 16-разрядном режиме совместимости, и это устанавливает УРОВЕНЬ ОШИБКИ в соответствии со старыми правилами MSDOS.

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

Переменная среды% CmdCmdLine% будет расширена до исходной
командная строка передана в CMD.EXE

При запуске командного файла из командной строки% CmdCmdLine% вернет:
C: \ WINDOWS \ system32 \ cmd.exe param1

Когда командный файл запускается двойным щелчком в проводнике Windows или ПУСК> ВЫПОЛНИТЬ,% CMDCMDLINE% вернет:
C: \ WINDOWS \ system32 \ cmd.exe / c «» C: \ demo \ batch.cmd param1

/ c может использоваться для определения режима запуска:
Echo% CmdCmdLine% | findstr / c: «/ c»> nul && Echo Запускается двойным щелчком.

Запуск сценария Powershell

Для запуска сценария PowerShell из оболочки CMD:

 C: \> файл PowerShell "c: \ batch \ demo.ps1 "
 

С аргументами:

 C: \> powershell -file "c: \ batch \ demo.ps1" filename1.txt Тестирование
 

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

 C: \> powershell -file "c: \ batch \ demo.ps1" "" "\ Path To \ filename1.txt" "" "" "Тестовая строка" ""
 

При вызове PowerShell из CMD помните, что запятая является разделителем CMD, это делает невозможным передачу массива значений, разделенных запятыми, в PowerShell.item1, item2, item3 обрабатываются так же, как item1 item2 item3

Запустить файл VBScript

Для запуска VBScript из оболочки CMD:

 C: \> cscript c: \ batch \ demo.vbs 

«Метод предприимчивых — смело планировать и энергично выполнять» ~ Джон Кристиан Бови

Связанные

START — Запуск программы, команды или командного файла.
Команды RUN Пуск | Выполните команды.
Запуск сценария из PowerShell
Запуск сценария из VBScript


Авторские права © 1999-2021 SS64.com
Некоторые права защищены.

Команды пакетного файла: пауза, удаление, спящий режим и др. — Видео и стенограмма урока

Команда REM

Самая простая команда — это команда REM . REM означает REMark, и в эту команду можно поместить все, что угодно. Это просто способ документировать ваш командный файл. Например, вы можете написать следующий код:

REM *** Этот файл был написан Дэвидом 4 июня 2015 г. ***

Откройте Блокнот и создайте новый файл.Напишите команду REMark в первой строке и добавьте любой описательный текст, который хотите. Щелкните Сохранить или Сохранить как. Сохраните файл в любом каталоге (например, «Мои документы», который уже должен существовать) и присвойте ему любое имя (например, «MyFirstBatchFile»), но с расширением .cmd. Убедитесь, что в нижней части окна сохранения, где написано «кодировка», тип кодировки говорит «ASCI». «Если не указано« ASCI », используйте стрелку раскрывающегося списка, чтобы выбрать« » ASCI » из опций.

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

Команды PAUSE и SLEEP

Давайте немного изменим ситуацию, чтобы увидеть, что происходит.Откройте командный файл .cmd в Блокноте. В строке 2 сразу после команды REM введите команду PAUSE . Теперь ваш файл должен выглядеть примерно так:

REM *** Этот файл был написан Дэвидом 4 июня 2015 г. ***
PAUSE

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

Команда SLEEP работает так же, как и команда PAUSE, за исключением того, что вместо ожидания, пока пользователь нажмет «любую клавишу», для команды SLEEP требуется параметр, указывающий, сколько секунд остается спать. Вернитесь к командному файлу в Блокноте и в строке 3 введите команду «SLEEP 10». Теперь ваш файл должен выглядеть так:

REM *** Этот файл был написан Дэвидом 4 июня 2015 г. ***
PAUSE
SLEEP 10

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

Команды TIMEOUT и DEL

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

REM *** Этот файл был написан Дэвидом 4 июня 2015 г. ***
PAUSE
TIMEOUT 10

В режиме SLEEP или TIMEOUT Windows будет ждать запрошенное количество секунд, прежде чем продолжить выполнение файла.

Вы можете спросить: «Я не понимаю! Все, что мы сделали, — это создали командный файл с некоторыми замечаниями и поставили его на паузу или в спящий режим.Это мне действительно не помогает ». Итак, давайте заставим наш пакетный файл сделать что-нибудь интересное.

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

DEL MySchedule.doc

удалит файл MySchedule.doc из вашего текущего каталога.

Команда DEL также принимает подстановочные знаки.Звездочка (*) означает любые символы. Знак вопроса (?) Означает любой один символ. Будьте очень осторожны с этой командой; он удаляет файлы и не просит вас подтвердить, если вы этого не попросите. Другими словами, если команда была DEL * .doc, все документы MS Word с расширением .doc в этой папке будут удалены. Если команда была DEL * .doc *, все документы MS Word с расширениями .doc или .docx в этой папке будут удалены.

Резюме урока

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

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

Советы и рекомендации по работе с пакетными файлами Windows — PushMon — Мониторинг скриптов, приложений, пакетных файлов и Cron

Пакетные файлы используются с ранней операционной системы Windows. Это простые текстовые файлы с расширениями файлов .bat | .cmd | .btm, и при выполнении команды интерпретируются интерфейсом командной строки Windows.

Хотя Microsoft выпустила более продвинутый инструмент командной строки под названием PowerShell (он не установлен по умолчанию), собственная командная строка Windows остается популярным выбором для создания сценариев.Вот несколько советов и приемов как для разработчиков, так и для нетехнических специалистов:

  1. Отображение комментариев или примечаний (ECHO и REM)

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

      • Использование «@REM» и «@ECHO OFF» Между ECHO и REM есть два различия. REM может быть полностью скрыт во время выполнения, в то время как ECHO на некотором уровне может быть подавлен, но всегда будет отображаться во время выполнения.Вот несколько приемов, как изменить отображение комментариев и примечаний, добавив в начале символа «@»:
          • @REM полностью скроет примечание и не будет отображаться в командной строке. Все строки REM после вызова @ECHO OFF также будут скрыты. Они подходят для документации, предназначенной для разработчиков, пишущих сценарий.
          • ECHO по умолчанию будет отображаться во время вызова команды, а также на стандартный вывод. Использование @ECHO или, если ему предшествует @ECHO OFF, отобразит команду только в стандартном выводе.Это подходит для создания маркеров во время выполнения, чтобы показать, в какой момент команда уже выполнена.
      • Рассмотрим следующий командный файл:
         ECHO «ECHO отображается в командной строке и на стандартном выводе».
        @ECHO «ECHO не отображается в командной строке, но будет отображаться в стандартном выводе».
        REM "REM отображается в командной строке."
        @REM "REM скрыт из командной строки."
        @ECHO OFF
        ECHO "все ECHO после @ECHO OFF будут отображаться в стандартном выводе, но не при вызове командной строки."
        REM "REM скрыт из командной строки после @ECHO OFF"
         

        Соответствующий вывод:

        советов @REM и @ECHO.

  2. Обработка ошибок

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

      • УРОВЕНЬ ОШИБКИ против% УРОВЕНЬ ОШИБКИ%
          • Оба относятся к текущему коду ошибки и имеют одинаковое значение. Основное различие между ними заключается в том, что% ERRORLEVEL% обрабатывается так же, как переменная, а ERRORLEVEL обрабатывается специально операцией if. Итак, если вы хотите проверить наличие ошибок:
         если ERRORLEVEL 1 goto: ERROR 
        , если% ERRORLEVEL% neq 0 goto: ERROR 

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

      • Пример обработки ошибок в пакетных файлах Windows:
         @ECHO OFF
        
        ECHO "Force Error"
        ping -invalid-arg
        если ERRORLEVEL 1 перейти к ERROR
        REM / B, чтобы окно командной строки не закрывалось
        EXIT / B% errorlevel%
        
        :ОШИБКА
        ECHO «Произошла ОШИБКА».
        ECHO «Продолжить обработку ошибок или очистку».
         

        Результатом будет:

        Пример обработки ошибок пакетного файла Windows

  3. Используйте VERIFY как простую проверку при копировании или перемещении файлов.

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

      • Вы можете использовать xcopy или копировать как операции копирования:
     @ECHO ВЫКЛ.
    
    Команда копирования REM с параметром / v; verify - это простая операция чтения
    копировать / v PushMon.летучая мышь copy_PushMon.bat
    REM xcopy command / v option; более продвинутая версия, которая проверяет размер скопированных файлов
    xcopy / v PushMon.bat xcopy_PushMon.bat
    
    ПРОВЕРИТЬ
    Команда копирования REM; verify - это простая операция чтения
    скопировать PushMon.bat copy2_PushMon.bat
    Команда REM xcopy; более продвинутая версия, которая проверяет размер скопированных файлов
    копировать / v PushMon.bat xcopy2_PushMon.bat
    
    если ERRORLEVEL 1 перейти к ERROR
    ВЫХОД% errorlevel%
    
    :ОШИБКА
    ECHO «Не удалось скопировать файлы».
     

У вас есть другие советы и рекомендации по созданию командных файлов Windows? Прокомментируйте эту страницу и добавите ее в список.

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

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