Командная строка и её команды

Командная строка cmd.exe открывается в странном месте при запуске от имени администратора

Когда я запускаю командную строку в Windows Vista Home Edition (моя текущая версия), она работает хорошо.

Расположение по умолчанию C:/Users/USERNAME отлично подходит для команд без прав администратора.

Тем не менее, эта странная странность произошла сегодня, когда я запустил ее как администратор, местоположение запуска гласило:

(это MySQL, установленный на моем локальном хосте)

Почему, и как я могу восстановить его обратно в C:/Windows/system32 для запуска командных строк с повышенными правами?

Командная строка и её команды

Что такое командная строка?
Командная строка windows — это отдельное ПО, которое входит в состав Операционной Системы и обеспечивает взаимосвязь между пользователем и ОС. С её помощью можно производить команды MS-DOS и других компьютерных команд. Основное преимущество командной строки состоит в том, что она позволяет вводить все команды без участия графического интерфейса, который намного быстрее и имеет массу дополнительных возможностей, которые не могут быть осуществлены в графическом интерфейсе.
Командная строка запускается в своей оболочке и предназначена для более опытных пользователей и помогает в таких сложных ситуациях, когда другие команды уже не работают. Например, через командную строку вводят команды в случае заражения вирусами или «поломки» системных файлов, а так же восстановление windows.

Командная строка и её команды

Где находится командная строка?

Основной файл командной строки — консоль cmd.exe переводящий команды пользователя в понятный системе вид, находится в папке с установленной ОС по пути: :WINDOWSsystem32cmd.exe

Как запустить / открыть / вызвать командную строку?

Данные методы запуска командный строки актуальны для всех версий, в том числе и тех, которые я рассматриваю на своем сайте — windows XP , 7 , 8

1) Пуск — Все программы — Стандартные — Командная строка

2) Пуск — Выполнить — вводим cmd.exe

3) сочетание клавиш Win + R — вводим cmd

Командная строка и её команды

4) Запуск из системной папки: :WINDOWSsystem32cmd.exe

Для того, чтобы запустить командную строку от имени Администратора, подойдет 1 и 4 способ, нужно на ярлыке щёлкнуть ПКМ и выбрать в меню «Запуск от имени Администратора».

Командная строка и её команды

Командная строка и её команды

Команды / параметры / ключи командной строки .
Узнать команды командной строки можно прям в ней же, набрав help и нажав клавишу Enter (после окончания ввода всех команд нужно использовать именно Enter (ВВОД) ).

Командная строка и её команды

только этот список не совсем полный, в нём отображаются лишь основные наиболее часто используемые команды и параметры.
Ниже, под спойлером, я собрал список команд командной строки (CMD) и их описание.

append — позволяет программам открывать файлы в указанных каталогах так , будто они находятся в текущем каталоге
arp — отображение и изменение таблиц преобразования IP-адресов в физические, используемые протоколом разрешения адресов
at — запуск программ в указанное время
atmsdm — контроль подключений и адресов, зарегистрированных диспетчером вызовов ATM в сетях с асинхронным режимом передачи (ATM).
attrib — изменение атрибутов файлов и папок
auditusr — задаёт политику аудита пользователей
assoc — вывод, либо изменение, сопоставлений по расширениям имён файлов
break — включение режима обработки клавиш CTRL+C
blastcln — утилита очистки от червей
bootcfg — может быть использована для настройки, извлечения, изменения или удаления параматров командной строки в файле Boot.ini
call — вызов одного пакетного файла из другого
cacls — просмотр изменение таблиц управления доступом ACL к файлам
cd — вывод имени, либо изменение текущей папки
chcp — вывод, либо изменение активной кодовой страницы
chdir — вывод, либо смена текущей папки
copy — копирование одного или нескольких файлов
cls — очистка экрана
chkdsk — проверка диска и вывод отчёта
chkntfs — выводит или изменяет параметры проверки диска во время загрузки
ciddaemon — сервис индексации файлов
cipher — программа шифрования файлов
comp — сравнение содержимого двух файлов или наборов файлов
compact — просмотр и изменение параметров сжатия файлов в разделах NTFS
convert — преобразование файловой системы тома FAT в NTFS
date — вывод, либо установка текущей даты
del — удаление одного или нескольких файлов
dir — вывод списка файлов и подпапок из указанной папки
diskcopy — копирование содержимого одного гибкого диска на другой
diskcomp — сравнение содержимого двух гибких дисков
debug — средство отладки и редактирования программ
defrag — дефрагментатор
devcon — это программа с интерфейсом командной строки, которая используется в качестве альтернативы диспетчеру устройств. С ее помощью можно включать, выключать, перезапускать, обновлять, удалять и опрашивать отдельные устройства или группы устройств. Программа DevCon также предоставляет необходимые разработчику драйвера сведения, которые недоступны с помощью диспетчера устройств.
diantz — cссылка на программу makecab.exe.
diskpart — использования сценария diskpart
diskperf — счётчик производительности
doskey — редактирование и повторный вызов команд windows xp , создание макросов driverquery — просмотр списка установленных драйверов устройств и их свойства
edlin — запуск построчного текстового редактора
echo — вывод сообщений и переключение режима отображения команд на экране
endlocal — конец локальных изменений среды для пакетного файла
erase — удаление одного или нескольких файлов
esentutl — maintance utilities for microsoft windows databases
eventcreate — позволяет создать запись об основном событии в журнале событий
eventtriggers — позволяет настроить триггеры событий в локальной или удалённой системе
exe2bin — преобразование exe в двоичный формат
expand — распаковка сжатых файлов
fc — сравнение файлов и вывод различий между ними
for — запуск указанной команды для каждого файла в наборе
format — форматирование диска
ftype — вывод, либо изменение типов файлов
find — поиск текстовой строки в одном или нескольких файлах
findstr — поиск строк в файлах
finger — вывод сведений о пользователях указанной системы, на которой запущена служба
fltmc — работа с драйверами фильтров
fontview — программа просмотра шрифтов
forcedos — запуск заданной программы в подсистеме MS-DOS. Эта команда необходима для тех программ MS-DOS, которые не распознаются системой Microsoft Windows XP.
fsutil — служебная программа командной строки, которая используется для выполнения связанных задач файловых систем FAT и NTFS, таких как управление точками повторной обработки, управление разреженными файлами, отключение тома или расширение тома.
ftp — программа передачи файлов
goto — передача управления в указанную строку пакетного файла
graftabl — позволяет windows отображать расширенный набор символов в графическом режиме
getmac — отображает MAC-адрес одного или нескольких сетевых адаптеров
gpresult — отображает результирующую политику RSoP для указанного компьютера
gpupdate — выполнение обновления групповых политик
if — оператор условного выполнения команд в пакетном файле
ipconfig — информация о IP адресе
ipxroute — программа управления маршрутизацией nwlink ipx
label — создание , изменение и удаление меток тома для диска
lodctr — обновление имен счётчиков и поясняющего текста для расширенного счётчика
logman — управление службой «повешения и журналы производительности»
logoff — завершение сеанса
lpq — отображение состояния очереди удалённой очереди печати lpq
lpr — направляет задание печати на сетевой принтер
lsass — сам не пойму для чего )
md — создание папки
mkdir — создать папку
mode – конфигурирование системных устройств
more — последовательный вывод данных по частям размером в один экран
move — перемещение одного или нескольких файлов из одной папки в другую
makecab — архивирует файлы в cab архив
mem — выводит сведения об используемой и свободной памяти
mofcomp — 32-разрядный компилятор
mountvol — создание, просмотр и удаление точек подключения
mqbkup — утилита архивирования и восстановления очереди сообщений
mqsvc — обеспечивает инфраструктуру для работы распределенных приложений, основанных на асинхронных сообщениях. MSMQ
mrinfo — работа с многоадресными рассылками.
msg — отправка сообщений
nbtstat — отображение статистики протокола и текущих подключений tcp/ip с помощью nbt
net — имеет кучу синтаксисов, узнать можно введя net /?
net1 — то же самое что и net
netsh — тоже много синтаксисов
netstat — отображение статистики протоколов и текущих сетевых подключений TCP/IP
nlsfunc — загрузка сведений о национальных стандартах
odbcconf — настройка драйвера ODBC.
openfiles — вывод списка открытых файлов и папок, которые были открыты в системе
path — вывод, либо установка пути поиска исполняемых файлов
popd — восстановление предыдущего значения текущей папки
prompt — изменение приглашения в командной строке
pushd — сохранения значений текущей активной папки и переход к следующей
pathping — программа пингования и поиска пути.
pentnt — обнаруживает ошибки деления с плавающей точкой процессора Pentium, отключает аппаратную обработку чисел с плавающей точкой и включает эмуляции операций с плавающей точкой.
ping — отправка пакетов на указанный адрес
ping6 — команда проверки связи
powercfg — управление электропитанием системы
print — печать текстового файла
proxycfg — инструмент настройки прокси
qappsrv — отображает доступные серверы терминалов в сети
qprocess — отображает информацию о процессах
qwinsta — отображение информации о сеансах терминалов
rd — удаление папки
rem — помещение ремарки в пакетный файл
ren — переименование файлов и папок
rename — переименовать файл или папку
rmdir — удаление папки
rasdial — интерфейс связи из командной строки для клиента службы удалённого доступа
rcp — обмен файлами с компьютером, на котором выполняется служба rcp
recover — восстановление данных на повреждённом диске
reg — служит для работы с реестром
regsvr32 — сервер регистрации
relog — создаёт новый журнал производительности из уже имеющегося, изменяет интервал сбора данных и ещё что то.
replace — замена файлов
reset — утилита сброса служб терминалов
rexec — выполнение команд на удаленных узлах на которых выполняется служба rexec
route — обработка таблиц сетевых маршрутов
rsh — выполнение команд на удалённых узлах на которых запущена служба rsh
runas — использование приложений от имени другого пользователя
rwinsta — сброс значений подсистем оборудования и программ сеанса в начальное состояние
sc — можно узнать где находиться профиль для работы в домене
set — вывод, установка и удаление переменных среды windows
setlocal — начало локальных изменений среды для пакетного файла
shift — изменение содержимого подставляемых параметров для пакетного файла
start — запуск программы или команды в отдельном окне
schtasks — заменяет AT, только чуть получше
sdbinst — установщик базы данных совместимости
setver — задаёт номер версии, который MS-DOS сообщает программе
sfc — проверка всех запущенных системных файлов и замена неправильных версий
shadow — наблюдение за другим сеансом служб терминалов
shutdown — перезагрузка, выключения компьютера и т.п.
smbinst — процесс, принадлежащий System Management BIOS Driver Installer.
sort — программа сортировки
subst — сопоставление имени диска указанному пути
systeminfo — позволяет получить информацию о конфигурации системы
taskkill — принудительное завершение процессов
tasklist — показывает процессы, выполняемые в данный момент
time — просмотр и изменение текущего времени
title — назначение заголовка текущего окна интерпретатора
tree — графическое отображение структуры заданного диска или папке
type — вывод на экране содержимого текстовых файлов
tcmsetup — установка клиента телефонии
tftp — обмен файлами с удалённым компьютером
tlntadmn — без понятия, так и не разобрался
tracerpt — обрабатывает двоичные файлы журнала отслеживания событий или потоки данных в реальном времени от поставщиков отслеживания событий и создаёт отчёт в текстовом файле, с описанием произошедших событий
tracert — трассировка маршрута к указанному узлу
tracert6 — версия tracert для протокола IPv6
tscon — присоединяет сеанс пользователя к сеансу терминала
tsdiscon — отключение сеанса терминала
tskill — прекращение процесса
tsshutdn — завершение работы сервера в установленном порядке
typeperf — выводит сведения о производительности на экран или в журнал
ver — вывод сведений о версии windows
verify — установка режима проверки правильности записи файлов на диск
vol — вывод метки и серийного номера тома для диска
unlodctr — удаление имен счётчиков и поясняющего текста для расширенного счётчика
userinit — является частью операционных систем Windows, отвечая за процесс загрузки системы
vssadmin — инструмент командной строки теневого копирования тома
w32tm — диагностика службы времени
wbemtest — тест инструментария windows
winver — информация о версии windows
wmic — настройка старта сеанса(для продвинутых пользователей, не советую использовать без должного опыта)
xcopy — копирование файлов и дерева папок

Командная строка и её команды

Командная строка и её команды

Вдаваться слишком глубоко не буду, потому что для этого лучше писать отдельную статью. Приведу лишь небольшой пример использования командной строки.
Допустим у меня на диске E находится папка 123 , а в ней текстовый файл test.txt .
Вот теперь я хочу сделать этот файл скрытым, не заходя на этот диск и не «видя» этого файла с папкой.
Команда, отвечающая за атрибут «Системный» — это attrib. И у неё существуют свои атрибуты (уже команды). Можете даже посмотреть на скрине выше, я там показывал именно её на примере.
Из всех её атрибутов мне нужны только два — это его установка и сам атрибут. За это отвечают + и s.
Итак, моя команда будет следующей: attrib +s e:/123/test.txt . Вот так будет выглядеть правильный результат:

Командная строка и её команды

Командная строка и её команды

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

Командная строка и её команды

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

Ну и напоследок:
Как редактировать текст в окне командной строки?
Дело в том, что стандартные методы с помощью сочетаний клавиш Ctrl+C и Ctrl+V в командной строке не работают.
Тут нужно пользоваться ПКМ — Правой Кнопкой Мыши.
Для того, чтобы вставить текст в командную строку, просто кликаем ПКМ на любом месте командной строки, затем выбираем Вставить.

Для того, чтобы скопировать часть текста из командной строки можно воспользоваться одним из двух методов:
1) ПКМ — Выделить всё
Выделится весь текст, но можете выделить сразу какой Вам угодно, просто как обычно зажав ЛКМ
2) ПКМ — Пометить
Появится мигающий курсор в начале строки, которым можно управлять «стрелочками» на клавиатуре. И при нажатой кнопке shift выделить текст, управляя так же «стрелками» на клавиатуре. Либо выделаем снова с помощью мыши.

Командная строка и её команды

Командная строка и её команды

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

Нижняя граница

Теперь вы должны знать, как изменить каталог в командной строке (CMD) с помощью команды CD в Windows 10. Вы можете легко получить доступ к различным каталогам или папкам с помощью команды Windows в командной строке.

Если вы не можете найти файл или папку на своем компьютере с Windows 10, вы можете потерять их или по ошибке удалить, вы можете легко восстановить файл или папку с помощью MiniTool Power Data Recovery .

MiniTool Power Data Recovery — профессиональная бесплатная программа для восстановления данных, совместимая с Windows 10/8/7. Вы можете использовать это программное обеспечение, чтобы легко восстанавливать данные в различных ситуациях потери данных.

А именно, вы можете восстановить любые удаленные / потерянные файлы с компьютера Windows 10/8/7, внешнего жесткого диска, USB / большого пальца / ручка , SD-карта и многое другое.

В случае потери данных из-за ошибочного удаления файлов, сбоя системы и других проблем компьютерной системы, сбоя жесткого диска, заражения вредоносными программами / вирусами и т. Д. Вы можете легко использовать MiniTool Power Data Recovery. восстановить потерянные файлы и данные .

Настройка командной строки.

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

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

Использование буфера обмена.

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

Настройки командной строки в Windows 10

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

— CTRL+C (CTRL+Insert) – скопировать выделенный текст.

— CTRL+V (Shift+Insert) – вставить выделенный текст.

Использование истории команд и горячих клавиш.

Для вызова ранее введенных команд используются клавиши со стрелками Стрелка Вверх — на одну команду назад и Стрелка Вниз — на одну команду вперед. Кроме того, можно использовать функциональные клавиши:

F1 — посимвольный вызов последней введенной команды. Каждое нажатие F1 приводит к последовательной подстановке в поле ввода одного символа из предыдущей команды.

F2 — копирование до символа. После нажатия на F2 на экране отображается запрос символа, до которого будет скопирована предыдущая команда. Например, если предыдущая команда была ping yandex.ru , и в качестве символа задана точка, то в строку ввода команды будет занесено ping yandex , если задан пробел, то — ping .

F3 — вызов предыдущей команды.

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

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

F7 — отображение ранее введенных команд в отдельном окне в виде списка. Для выполнения нужной команды нужно выбрать ее, используя клавиши со стрелками, и нажать ENTER

F9 — выполнить команду, номер которой запрашивается. Номер команды в списке истории можно получить при использовании F7 .

В Windows 10 / Windows Server 2016 появились возможности, отсутствующие в предыдущих реализациях командной строки:

— Изменение прозрачности окна консоли при нажатии комбинаций CTRL + Shift + — или CTRL + Shift + + .

— Включение / выключение полноэкранного режима при нажатии CTRL+Enter .

— Расширение возможностей выделения текста и редактирования:

Shift+Home – выделить текст от текущего положения курсора до начала строки.

Shift+End – выделить текст от текущего положения курсора до конца строки.

— Быстрое перемещение по буферу экрана и поиск по контексту:

CTRL+Home – перейти в начало буфера экрана

CTRL+End – перейти в конец буфера экрана.

CTRL+Стрелка Вверх — перемещение на 1 строку вверх.

CTRL+Стрелка Вниз — перемещение на 1 строку вниз.

CTRL+F — открыть диалог поиска текста в буфере экрана.

Окно командной строки в Windows 10 можно закрыть с помощию стандартной комбинации клавиш — ALT+F4 .

Для отключения новых возможностей CMD, необходимо в свойствах приложения установить галочку ”Использовать прежнюю версию консоли (требуется перезапуск)”

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

В командной строке Windows можно выполнять подстановку имен файлов и каталогов при нажатии клавиши Tab . Например, для перехода, в каталог с длинным именем Program Files наберите начальную часть имени каталога

CD Pro и нажмите Tab. В строке ввода должна появиться команда :

CD «Program Files»

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

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

Перенаправление данных стандартного ввода /вывода консоли.

Как уже упоминалось, в качестве стандартного устройства ввода командной строки используется клавиатура, а в качестве устройства вывода – дисплей. Однако, существует возможность перенаправления ввода-вывода на другие устройства c использованием операторов перенаправления:

ping –n 5 localhost > nul — выполнить пинг петлевого интерфейса 5 раз с перенаправлением вывода в фиктивное устройство nul . Вывод результатов выполнения команды подавляется. Подобный прием используется для организации задержки в командных файлах, поскольку пинг петлевого интерфейса выполняется почти мгновенно, а интервал между пингами равен одной секунде, время выполнения данной команды определяется значением параметра -n

ping –n 100 yandex.ru > C:ping-ya.txt — выполнить 100 раз пинг узла yandex.ru c записью результатов выполнения команды в файл C:ping-ya.txt. Если файл не существует, он будет создан, а если существует, его содержимое будет затерто.

ping –n 100 yandex.ru >> C:ping-ya.txt — то же, что и в предыдущем примере, но, если файл не существует, то он будет создан, а если существует, то запись результатов будет выполняться в конец файла.

cmd — запустить командный процессор CMD и выполнить ввод данных из файла 1.txt. Если в файле поместить строку ping –n 100 yandex.ru , то выполнится команда, рассмотренная выше.

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

ping -n 100 microsoft.com | find «Превышен интервал» — результат выполнения команды ping -n 100 microsoft.com передается в виде входных данных для команды поиска строк ( find ), содержащих текст «Превышен интервал».

ping -n 100 microsoft.com | find «Превышен интервал» > C:ping-ya.txt — то же, что и в предыдущем примере, но с перенаправлением выводимых результатов выполнения команды в текстовый файл.

Каждому открытому файлу или устройству соответствует свой дескриптор ( handle ) который представляет собой неотрицательное число, значение которого используется породившим поток ввода-вывода процессом. По умолчанию, для всех процессов, в том числе и для командного интерпретатора cmd.exe :

0 ( STDIN ) – дескриптор стандартного ввода (ввод с клавиатуры).

1 (STDOUT) – дескриптор стандартного вывода (вывод на экран).

2 (STDERR) – дескриптор вывода диагностических сообщений (сообщений об ошибках на экран).

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

ping.exe –n 100 yandex.ru 2> C:pinglog.txt — стандартный поток сообщений программы ping.exe будет выводиться на экран, а ошибки ( стандартный вывод с дескриптором = 2 ) будут записаны в файл C:pinglog.txt . В реальном случае для программы ping.exe приведенная конструкция значения не имеет, поскольку она выводит и диагностику, и результаты на экран.

Для задания перенаправления в существующие дескрипторы используется амперсанд (&), затем номер требуемого дескриптора (например, &1):

ping –n 100 yandex.ru >log.txt 2>&1 — стандартный поток сообщений об ошибках (дескриптор=2) перенаправляется в стандартный поток вывода (дескриптор = 1) и все это перенаправляется в файл log.txt текущего каталога.

ping –n 100 yandex.ru >log.txt 1>&2 — стандартный вывод (дескриптор = 1) перенаправляется в вывод сообщений об ошибках (дескриптор=2) и все это записывается в текстовый файл.

Если дескриптор не определен, то по умолчанию оператором перенаправления ввода будет ноль (0), а оператором перенаправления вывода > будет единица.

Объединение нескольких команд в цепочку

В командной строке Windows существует возможность последовательного выполнения нескольких команд в зависимости от результатов их выполнения. Для чего используются символы объединения команд — & (амперсанд) и | (вертикальная черта)

& — одиночный амперсанд используется для разделения нескольких команд в одной командной строке. Например:

echo ping ya.ru — вывод на экран строки ping ya.ru

echo &ping ya.ru — последовательное выполнение команды echo без параметров и команды ping ya.ru

&& — условное выполнение второй команды. Она будет выполнена, если код завершения (значение которого передается в стандартную переменную ERRORLEVEL) первой команды равен нулю, т.е. команда выполнена успешно.

команда1 && команда2 — выполняется команда1 , а команда2 выполняется, только если первая была выполнена успешно. Например:

ping ya.ru -err & ping –n 2 ya.ru — при использовании единичного амперсанда, первая команда ping ya.ru –err выдаст сообщение о неверном параметре -err , а вторая, ping –n 2 ya.ru выполнит двукратный пинг узла ya.ru

ping ya.ru -err && ping –n 2 ya.ru — при использовании двойного амперсанда, первая команда ping ya.ru –err выдаст сообщение о неверном параметре -err и соответственно, сформирует код завершения не равный нулю (ошибка), что приведет к тому, что вторая команда ( ping ya.ru -n 2 ) выполнена не будет.

Двойная вертикальная черта || — условное выполнение второй команды. Если первая команда завершилась с кодом возврата не равным нулю (неуспешно), то выполняется команда, следующая за двойной вертикальной чертой.

команда1 || команда2 — если команда1 выполнена неуспешно, то запускается на выполнение команда2

ping –n 1 ya.ru && ping –n2 ya.ru || ping –n 3 ya.ru — сначала выполнится 1-я команда ping ya.ru –n 1 — однократный пинг узла ya.ru , затем выполнится команда ping ya.ru -n 2 — двукратный пинг узла ya.ru . Третья команда ping ya.ru -n 3 , трехкратный пинг узла ya.ru выполнена не будет.

ping –n 1 –err ya.ru && ping ya.ru -n 2 || ping ya.ru -n 3 — первая команда ping ya.ru –n 1 –err выполнится с ошибкой из-за неверного параметра -err , вторая команда ping –n 2 ya.ru — двукратный пинг узла ya.ru не будет выполнена из-за условия двойного амперсанда, и в результате выполнится третья команда ping –n 3 ya.ru , трехкратный пинг узла ya.ru .

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

ECHO ping -n 1 ya.ru & ping -n 2 ya.ru

то вместо текста ping -n 1 ya.ru & ping -n 2 ya.ru будет выведена его часть до символа амперсанда ping -n 1 ya.ru и затем выполнена команда после амперсанда — ping -n 2 ya.ru . Проблему решает использование специального экранирующего символа ^ , который позволяет использовать служебные символы как текст:

ECHO ping -n 1 ya.ru ^& ping -n 2 ya.ru — вывод на экран текста ping -n 1 ya.ru & ping -n 2 ya.ru

Логика условной обработки команд, реализуемая с помощью конструкций && и || действует только на ближайшую команду, то есть, при вводе команды

TYPE C:plan.txt && DIR & COPY /?

команда COPY /? запустится в любом случае, независимо от результата выполнения команды TYPE C:plan.txt . Но, несколько команд можно сгруппировать с помощью скобок. Например, есть 2 командные строки:

TYPE C:plan.txt && DIR & COPY /?

TYPE C:plan.txt && (DIR & COPY /?)

В первой из них символ условной обработки && действует только на команду DIR, во второй — одновременно на две команды: DIR и COPY. В качестве наглядного эксперимента, попробуйте выполнить вторую команду при условиях наличия и отсутствия файла C:plan.txt . Для создания пустого файла можно воспользоваться копированием из фиктивного устройства nul :

copy nul C:plan.txt

Для удаления файла используется команда erase c:plan.txt или del C:plan.txt

Командные файлы

Командные файлы (сценарии, скрипты) – это обычные текстовые файлы с заранее подготовленным набором команд для их выполнения командным процессором cmd.exe . Стандартно, такие файлы имеют расширение .bat или .cmd . Строки командных файлов могут содержать специфические команды самого процессора команд, например — FOR, ECHO, REM и т.п. или имена исполняемых модулей – reg.exe, sc.exe, auditpol.exe., которые можно использовать без расширения – reg, sc, auditpol. Пример простого командного файла:

REM Создается текстовый файл со списком каталога Windows
dir C:Windows > %TEMP%winlist.txt
REM выполняется задержка на 5 секунд
ping -n 5 localhost > nul
REM Файл открывается в редакторе WordPad
write %TEMP%winlist.txt
REM После завершения работы Wordpad, текстовый файл удаляется.
erase C:winlist.txt

Строки, начинающиеся с REM являются комментариями. В качестве примера, используются команды для работы с файловой системой и выполняется запуск приложения графической среды – текстового редактора Wordpad (write.exe) с передачей ему параметра командной строки (имя файла). Язык командных файлов довольно примитивен и не в полной мере соответствует требованиям сегодняшнего дня, однако, он является самым простым средством автоматизации рутинных действий и используется большинством системных администраторов и грамотных пользователей. Работа с командными файлами – это отдельная тема, более подробно изложенная на странице Командные файлы

Прочие материалы для освоения работы в командной строке Windows:

Если вы желаете поделиться ссылкой на эту страницу в своей социальной сети, пользуйтесь кнопкой «Поделиться»

Оцените статью
Fobosworld.ru
Добавить комментарий

Adblock
detector