
Программистам часто приходится работать в консоли — например, чтобы запустить тестирование проекта, закоммитить новый код на Github
или отредактировать документ в vim. Всё это происходит так часто, что все основные действия с файлами становится быстрее и привычнее выполнять в консоли. Рассказываем и показываем основные команды, которые помогут ускорить работу в терминале под OS Windows.
Для начала нужно установить терминал
или запустить командную строку, встроенную в Windows — для этого нажмите Win+R
и введите cmd
. Терминал часто встречается и прямо в редакторах кода, например, в Visual Studio Code
.
Чтобы ввести команду в консоль, нужно напечатать её и нажать клавишу Enter
.
How to display the current directory path with cmd commands?
The cd command is one of the most used commands in MS-DOS. It is used to change directories. This command can be used to navigate the directory structure and find files on a computer or a server. From the command prompt program called cmd.exe in the system, simply se the cd command.
cd

Use the current directory in a batch file using variables
In a batch file it is a very similar approach, the difference is that the current directory name is stored like a system variable, with two percentage symbols. From a batch script, i.e., a .bat file.
%cd%
Script to display the current path dynamically using cmd
For example, use this simple example to assign a batch variable with the current directory path and display it to the screen. To use this example, simply copy and paste the code below to a BATCH file, for example DisplayDirectory.bat and execute it.
echo off rem the previous command is disabling echo to avoid all lines on the execution screen rem setting the variable with the current directory value set VarPath=%CD% rem displaying the variable on the prompt screen echo "The current folder is:" echo %VarPath% rem setting a 15 seconds timeout to let the prompt displayed timeout 15
The cd command is also useful to change the current drive and to navigate to the parent folder. To display the cd command help from within a command prompt, simply type this command:
cd /?
В командной строке Командной строки Windows (CMD) по умолчанию нет возможности создать файла используя текущие дату и время, для их использования необходимо сначала преобразовать в формат с использованием ограничений в имени файлов.
Стандартными средствами Windows мы не можем организовать ротацию. Можно попробовать использовать переменные %date% и %time%, но содержание в них запрещенных символов, просто вызовет ошибку.

Получаем дату и время
В начале командного файла пишем следующий текст:
set _my_datetime=%date%_%time%
set _my_datetime=%_my_datetime: =_%
set _my_datetime=%_my_datetime::=%
set _my_datetime=%_my_datetime:/=_%
set _my_datetime=%_my_datetime:.=_%
set _my_datetime=%_my_datetime:,=_% В итоге в перемененной %_my_datetime% мы будем иметь текущую дату и время в формате не нарушающем правила именования файлов.
Получаем только дату
Если нужна просто дата то пишем следующее:
set _my_datetime=%date%
set _my_datetime=%_my_datetime: =_%
set _my_datetime=%_my_datetime::=%
set _my_datetime=%_my_datetime:/=_%
set _my_datetime=%_my_datetime:.=_%
set _my_datetime=%_my_datetime:,=_% Ну тут мы просто убрали из переменной переменную времени.
Пример формирования файла с использованием текущей даты и времени в CMD
Пример скрипта использующегося для создания архивов DrWeb CureIt! за сутки с помощью WGET под Windows.
echo off
cls
set _my_datetime=%date%_%time%
set _my_datetime=%_my_datetime: =_%
set _my_datetime=%_my_datetime::=%
set _my_datetime=%_my_datetime:/=_%
set _my_datetime=%_my_datetime:.=_%
set _my_datetime=%_my_datetime:,=_%
C:\Install\wget.exe —no-cache -O C:\mirror\CureIT\%_my_datetime%.exe http://www.freedrweb.com/download+cureit/gr/?lng=ru Сеанс по времени, зависящий от региона,
Выходной формат %DATE%
и команды dir
зависит от региона и, следовательно, не является ни надежным, ни умным. date.exe
(часть UnxUtils
) предоставляет любые дату и время в любом воображаемом формате. Вы также можете извлечь информацию о дате/времени из любого файла с помощью date.exe
.
Примеры: (в cmd- script используйте %% вместо%)
date.exe +"%Y-%m-%d"
2009-12-22
date.exe +"%T"
18:55:03
date.exe +"%Y%m%d %H%M%S: Any text"
20091222 185503: Любой текст
date.exe +"Text: %y/%m/%d-any text-%H.%M"
Текст: 09/12/22 – любой текст-18.55
Command: date.exe +"%m-%d """%H %M %S """"
07-22 “18:55:03” `
Информация о дате/времени из справочного файла:
date.exe -r c:\file.txt +"The timestamp of file.txt is: %Y-%m-%d %H:%M:%S"
Используя его в CMD script, чтобы получить информацию о год, месяц, день, время:
for /f "tokens=1,2,3,4,5,6* delims=," %%i in ('C:\Tools\etc\date.exe +"%%y,%%m,%%d,%%H,%%M,%%S"') do set yy=%%i& set mo=%%j& set dd=%%k& set hh=%%l& set mm=%%m& set ss=%%n Используя его в CMD script, чтобы получить отметку времени в любом требуемом формате:
for /f "tokens=*" %%i in ('C:\Tools\etc\date.exe +"%%y-%%m-%%d %%H:%%M:%%S"') do set timestamp=%%i Извлечение информации о дате/времени из любого ссылочного файла.
for /f "tokens=1,2,3,4,5,6* delims=," %%i in ('C:\Tools\etc\date.exe -r file.txt +"%%y,%%m,%%d,%%H,%%M,%%S"') do set yy=%%i& set mo=%%j& set dd=%%k& set hh=%%l& set mm=%%m& set ss=%%n Добавление в файл информации о дате/времени:
for /f "tokens=*" %%i in ('C:\Tools\etc\date.exe -r file.txt +"%%y-%%m-%%d.%%H%%M%%S"') do ren file.txt file.%%i.txt date.exe часть бесплатных инструментов GNU
, которые не требуют установки.
ПРИМЕЧАНИЕ. Копирование date.exe
в любой каталог, находящийся в пути поиска, может привести к сбою других сценариев, которые используют встроенную команду date
для Windows.
Бывает, что некоторые команды
Windows cmd
сложно вспомнить, и сохранение их на компьютере или на бумаге в качестве шпаргалки является хорошей практикой. Этот список не является полным, но он содержит наиболее часто используемые команды. Не стесняйтесь добавить свои наиболее часто используемые команды в комментариях ниже, а так же поделиться этим списком.
Управление файлами и папками
Приложения и процессы
- SCHTASKS
– Запланированный запуск приложения приложения (планировщик задач) - SHUTDOWN
– Выключение или перезагрузка компьютера - TASKLIST
– Список выполняемых задач - TASKKILL
– Остановить или прекратить выполнение задачи (для остановки задачи используется PID, который можно узнать из TASKLIST). - REG
– Запустить редактор реестра - RUNAS
– Запуск задачи от имени другого пользователя
Управление дисками
- CHKDISK
– Проверяет диск и показывает статистику - DEFRAG
– Запуск дефрагментации диска - CHKNTFS
– Отображает или изменяет выполнение проверки диска при загрузке - COMPACT
– Отображает и изменяет сжатие файлов в разделах NTFS - CONVERT
– преобразование дискового тома FAT в NTFS - DISKPART
– Отображение и настройка свойств разделов диска - FORMAT
– Форматирование диска - FSUTIL
– Отображение и настройка свойств файловой системы - LABEL
– Создание, изменение или удаление метки тома диска - RECOVER
– Восстановление данных с поврежденного или испорченного диска - VOL
– Отображение метки тома и серийного номера диска
Системная информация
- DATE
– Выводит или устанавливает текущую дату - TIME
– Выводит или устанавливает системное время - DRIVERQUERY
– Отображает текущее состояние и свойства драйвера устройства - HOSTNAME
– Отображает имя компьютера - SYSTEMINFO
– Отображает информацию о конфигурации компьютера - VER
– Позволяет просмотреть версию Windows - GPRESULT
– Отображает текущие примененные групповые политики (RSoP) - GPUPDATE
– Обновление групповых политик
Сеть
- IPCONFIG
– Отображает информацию о сетевых интерфейсах - PING
– Отправляет ICMP-запросы на целевой хост, проверяет его доступность - TRACERT
– Отображение пути пакетов в сети - NSLOOKUP
– Поиск IP-адреса по имени ресурса - ROUTE
– Отображает таблицы сетевых маршрутов - ARP
– Показывает таблицу с IP-адресами, преобразованными в физические адреса - NETSH
– Запускает программу управления сетевыми настройками - GETMAC
– Показывает MAC-адрес сетевого адаптера - TFTP
– Запускает TFTP-клиент в консоли
Настройка командной строки
- CLS
– Очистить экран - CMD
– Отображает другую командную строку - COLOR
– Устанавливает цвет текста и фона в консоли - PROMPT
– Изменение начального текста командной строки - TITLE
– Присвоение заголовка для текущего сеанса - HELP
– Запуск справки CMD - EXIT
– Выход из командной строки
Аverage rating :
Литейный пр., д. 26, Лит. А
+7 (812) 403-06-99

ООО «ИТГЛОБАЛКОМ ЛАБС»
Литейный пр., д. 26, Лит. А
+7 (812) 403-06-99

ООО «ИТГЛОБАЛКОМ ЛАБС»

Зарегистрируйтесь
для доступа к 15+ бесплатным курсам по программированию с тренажером
Навигация
Основы командной строки
После запуска операционной системы с графической оболочкой мы попадаем в специальную рабочую область, которую часто называют рабочий стол
. Это центральная точка входа, откуда через разные пункты меню начинается работа, запускаются разные задачи. Например, для навигации по файловой системе понадобится проводник.
В командной строке все устроено иначе: после загрузки системы мы попадаем в режим ожидания ввода команды. Этот режим привязан к файловой системе. Можно сказать, что мы всегда находимся внутри какой-то директории, которую называют рабочей директорией
( working directory
).
В этом уроке мы поговорим о навигации по директориям через командную оболочку.
Как проверить, в какой директории мы находимся
Начнем с самого основного. Проверить, в какой директории мы сейчас находимся, можно командой pwd
:
/Users/guest Кстати, название команды pwd
— это сокращение, которое расшифровывается как print working directory
. Похожим образом устроены имена многих команд, что позволяет легче и быстрее их запомнить.
По умолчанию новая сессия командной оболочки открывается внутри домашней директории пользователя. У каждого пользователя своя домашняя директория, поэтому в вашем случае путь будет отличаться.
В приведенном примере есть две неожиданности для тех, кто привык пользоваться Windows:
- В начале указан не диск, а единый корневой каталог
/
. Это вершина файловой системы, внутри которой лежат все остальные файлы и директории - Вместо обратных слэшей
\
используются прямые слэши/
Подробнее о различиях и файловой структуре мы поговорим в одном из следующих уроков, а сейчас сосредоточимся на навигации.
Как посмотреть список файлов
Изучим команду ls
(сокращение от list
). Она выводит список файлов и директорий в текущей рабочей директории:
Desktop Documents Downloads Library Movies Music Pictures Public Как переместиться в другую директорию
Еще одна полезная команда — cd
(сокращение от change directory
). С помощью нее мы перемещаемся по файловой структуре. Для этого ей нужно передать аргумент
— директорию, в которую необходимо переместиться:
# Входим в директориюMusic# Смотрим ее содержимоеiTunes # Смотрим текущую рабочую директорию/Users/guest/Music # Если имя директории содержит пробел, то его нужно экранировать с помощью `\`Bestmusic Остановимся на этом моменте подробнее. Возможно, вы знаете, что есть два способа обозначить путь до файла:
- Абсолютный путь
начинается от корня - Относительный путь
начинающийся от текущей рабочей директории
Выше мы указали относительный путь. Отличить их друг от друга очень легко:
- Абсолютный — первым символом в пути идет
/ - Относительный — во всех остальных случаях
Команда cd
понимает и абсолютные, и относительные пути. Поэтому передавать ей можно что угодно:
# Неважно, в каком месте /Users/guest/Music # Абсолютный путь Еще раз проговорим, что абсолютный путь однозначно определяет адрес файла или директории в файловой системе, а относительный — нет.
Поэтому относительный путь стоит использовать только вместе с текущей рабочей директорией, относительно которой он считается. При передаче абсолютного пути не имеет никакого значения, какая сейчас рабочая директория. Если путь существует, то переход произойдет.
/Users/guest Но есть путь проще. Можно указать специальное значение ..
и перейти на директорию уровнем выше:
..
/Users/guest Более того, с помощью этого заполнителя можно выходить на любое количество уровней, указывая ..
через разделитель:
# Выходим на два уровня вверх ../..
/Users Иногда вместо двух точек используется одинарная точка
, которая означает текущую директорию. Например, вместо cd Music
можно писать cd ./Music
— разницы между этими выражениями нет.
# Из любого места/Users/guest Ну и, наконец, четвертый вариант. Домашняя директория пользователя имеет специальное обозначение — ~
(). В момент выполнения команды тильда заменяется на абсолютный путь. Поэтому из любого места можно напрямую перейти в любую поддиректорию домашней директории:
# Из любого места ~/Music
/Users/guest/Music Допустим, вы находитесь в домашней директории и хотите посмотреть файлы в поддиректории Music
. Один способ вы уже знаете — для этого нужно перейти в директорию Music
и выполнить программу ls
.
Как обычно, есть другой способ. Команда ls
также может принимать на вход аргумент
— директорию, которую нужно проанализировать:
Music
iTunes Как и в случае с командой cd
, к аргументу ls
применимы понятия абсолютных и относительных путей. Впрочем, это правило распространяется на большинство случаев, где передаются пути.
Команда cd -
возвращает в предыдущую директорию. Другими словами, последовательный вызов этой команды переключает между двумя последними посещенными директориями.
Команды cd
, ls
и pwd
вместе составляют основу навигации по файловой структуре. Зная их, вы никогда не потеряетесь и не запутаетесь.
Со временем набирать пути становится все более лениво. Тогда можно дважды нажать Tab
и воспользоваться автокомплитом
— функцией, которая автоматически завершает имена.
Самостоятельная работа
Изучите содержимое директорий своей файловой системы. При перемещении между разделами с помощью команды cd
используйте клавишу Tab
для автозаполнения.

Остались вопросы? Задайте их в разделе « Обсуждение
»
Вам ответят команда поддержки Хекслета или другие студенты
See Windows Batch File (.bat) to get current date in MMDDYYYY format
:
@echo off
For /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set mydate=%%c-%%a-%%b)
For /f "tokens=1-2 delims=/:" %%a in ('time /t') do (set mytime=%%a%%b)
echo %mydate%_%mytime% If you prefer the time in 24 hour/military format, you can replace the second FOR line with this:
For /f "tokens=1-2 delims=/:" %%a in ("%TIME%") do (set mytime=%%a%%b) C:> .\date.bat
2008-10-14_0642
If you want the date independently of the region day/month order, you can use “WMIC os GET LocalDateTime” as a source, since it’s in ISO order:
@echo off
for /F "usebackq tokens=1,2 delims==" %%i in (`wmic os get LocalDateTime /VALUE 2^>NUL`) do if '.%%i.'=='.LocalDateTime.' set ldt=%%j
set ldt=%ldt:~0,4%-%ldt:~4,2%-%ldt:~6,2% %ldt:~8,2%:%ldt:~10,2%:%ldt:~12,6%
echo Local date is [%ldt%] Regionally independent date time parsing
The output format of %DATE%
and of the dir
command is regionally dependent and thus neither robust nor smart. date.exe (part of UnxUtils) delivers any date and time information in any thinkable format. You may also extract the date/time information from any file with date.exe
.
Examples: (in a cmd-script use %% instead of %)
date.exe +"%Y%m%d %H%M%S: Any text"
20091222 185503: Any text
date.exe +"Text: %y/%m/%d-any text-%H.%M"
Text: 09/12/22-any text-18.55
Command: date.exe +"%m-%d """%H %M %S """"
07-22 “18:55:03″`
The date/time information from a reference file:
date.exe -r c:\file.txt +"The timestamp of file.txt is: %Y-%m-%d %H:%M:%S"
Using it in a CMD script to get year, month, day, time information
:
for /f "tokens=1,2,3,4,5,6* delims=," %%i in ('C:\Tools\etc\date.exe +"%%y,%%m,%%d,%%H,%%M,%%S"') do set yy=%%i& set mo=%%j& set dd=%%k& set hh=%%l& set mm=%%m& set ss=%%n Using it in a CMD script to get a timestamp in any required format:
for /f "tokens=*" %%i in ('C:\Tools\etc\date.exe +"%%y-%%m-%%d %%H:%%M:%%S"') do set timestamp=%%i Extracting the date/time information from any reference file.
for /f "tokens=1,2,3,4,5,6* delims=," %%i in ('C:\Tools\etc\date.exe -r file.txt +"%%y,%%m,%%d,%%H,%%M,%%S"') do set yy=%%i& set mo=%%j& set dd=%%k& set hh=%%l& set mm=%%m& set ss=%%n Adding to a file its date/time information:
for /f "tokens=*" %%i in ('C:\Tools\etc\date.exe -r file.txt +"%%y-%%m-%%d.%%H%%M%%S"') do ren file.txt file.%%i.txt date.exe is part of the free GNU tools which need no installation.
NOTE: Copying date.exe
into any directory which is in the search path may cause other scripts to fail that use the Windows built-in date
command.
MAKECAB
– will work on EVERY Windows system (fast, but creates a small temp file) (the foxidrive script):@echo off pushd "%temp%" makecab /D RptFileName=~.rpt /D InfFileName=~.inf /f nul >nul for /f "tokens=3-7" %%a in ('find /i "makecab"^<~.rpt') do ( set "current-date=%%e-%%b-%%c" set "current-time=%%d" set "weekday=%%a" ) del ~.* popd echo %weekday% %current-date% %current-time% pauseMore information about get-date function.
ROBOCOPY
– it’s not native command for Windows XP and Windows Server 2003, but it can be downloaded from microsoft site. But is built-in in everything from Windows Vista and above:@echo off setlocal for /f "skip=8 tokens=2,3,4,5,6,7,8 delims=: " %%D in ('robocopy /l * \ \ /ns /nc /ndl /nfl /np /njh /XF * /XD *') do ( set "dow=%%D" set "month=%%E" set "day=%%F" set "HH=%%G" set "MM=%%H" set "SS=%%I" set "year=%%J" ) echo Day of the week: %dow% echo Day of the month : %day% echo Month : %month% echo hour : %HH% echo minutes : %MM% echo seconds : %SS% echo year : %year% endlocalAnd three more ways that uses other Windows script languages. They will give you more flexibility e.g. you can get week of the year, time in milliseconds and so on.
JScript/batch
hybrid (need to be saved as.bat
). J Script is available on every system form NT and above, as a part of Windows Script Host (though can be disabled through the registry it’s a rare case):@if (@X)==(@Y) @end /* ---Harmless hybrid line that begins a JScript comment @echo off cscript //E:JScript //nologo "%~f0" exit /b 0 *------------------------------------------------------------------------------*/ function GetCurrentDate() { // Today date time which will used to set as default date. var todayDate = new Date(); todayDate = todayDate.getFullYear() + "-" + ("0" + (todayDate.getMonth() + 1)).slice(-2) + "-" + ("0" + todayDate.getDate()).slice(-2) + " " + ("0" + todayDate.getHours()).slice(-2) + ":" + ("0" + todayDate.getMinutes()).slice(-2); return todayDate; } WScript.Echo(GetCurrentDate());VSCRIPT/BATCH
hybrid ( Is it possible to embed and execute VBScript within a batch file without using a temporary file?
) same case as JScript, but hybridization is not so perfect::sub echo(str) :end sub echo off '>nul 2>&1|| copy /Y %windir%\System32\doskey.exe %windir%\System32\'.exe >nul '& echo current date: '& cscript /nologo /E:vbscript "%~f0" '& exit /b '0 = vbGeneralDate - Default. Returns date: mm/dd/yy and time if specified: hh:mm:ss PM/AM. '1 = vbLongDate - Returns date: weekday, monthname, year '2 = vbShortDate - Returns date: mm/dd/yy '3 = vbLongTime - Returns time: hh:mm:ss PM/AM '4 = vbShortTime - Return time: hh:mm WScript.echo Replace(FormatDateTime(Date,1),", ","-")PowerShell
– can be installed on every machine that has . NET – download from Microsoft (v1, v2, v3 (only for Windows 7 and above)). Он установлен по умолчанию на все, начиная с Windows 7/Windows Server 2008 и выше:C:\> powershell get-date -format "{dd-MMM-yyyy HH:mm}"Чтобы использовать его из пакетного файла:
for /f "delims=" %%# in ('powershell get-date -format "{dd-MMM-yyyy HH:mm}"') do @set _date=%%#Самокомпилируемый jscript.net/batch
(никогда не видел машины с Windows без .NET, так что я думаю, что это довольно портативный):@if (@X)==(@Y) @end /****** silent line that start JScript comment ****** @echo off :::::::::::::::::::::::::::::::::::: ::: Compile the script :::: :::::::::::::::::::::::::::::::::::: setlocal if exist "%~n0.exe" goto :skip_compilation set "frm=%SystemRoot%\Microsoft.NET\Framework\" :: Searching the latest installed .NET framework for /f "tokens=* delims=" %%v in ('dir /b /s /a:d /o:-n "%SystemRoot%\Microsoft.NET\Framework\v*"') do ( if exist "%%v\jsc.exe" ( rem :: the javascript.net compiler set "jsc=%%~dpsnfxv\jsc.exe" goto :break_loop ) ) echo jsc.exe not found && exit /b 0 :break_loop call %jsc% /nologo /out:"%~n0.exe" "%~dpsfnx0" :::::::::::::::::::::::::::::::::::: ::: End of compilation :::: :::::::::::::::::::::::::::::::::::: :skip_compilation "%~n0.exe" exit /b 0 ****** End of JScript comment ******/ import System; import System.IO; var dt=DateTime.Now; Console.WriteLine(dt.ToString("yyyy-MM-dd hh:mm:ss"));@echo off setlocal del /q /f %temp%\timestampfile_* Logman.exe stop ts-CPU 1>nul 2>&1 Logman.exe delete ts-CPU 1>nul 2>&1 Logman.exe create counter ts-CPU -sc 2 -v mmddhhmm -max 250 -c "\Processor(_Total)\%% Processor Time" -o %temp%\timestampfile_ >nul Logman.exe start ts-CPU 1>nul 2>&1 Logman.exe stop ts-CPU >nul 2>&1 Logman.exe delete ts-CPU >nul 2>&1 for /f "tokens=2 delims=_." %%t in ('dir /b %temp%\timestampfile_*^&del /q/f %temp%\timestampfile_*') do set timestamp=%%t echo %timestamp% echo MM: %timestamp:~0,2% echo dd: %timestamp:~2,2% echo hh: %timestamp:~4,2% echo mm: %timestamp:~6,2% endlocal exit /b 0Еще один способ с WMIC
который также дает неделю года и день недели, но не миллисекунды (для миллисекунд проверьте ответ foxidrive):for /f %%# in ('wMIC Path Win32_LocalTime Get /Format:value') do @for /f %%@ in ("%%#") do @set %%@ echo %day% echo %DayOfWeek% echo %hour% echo %minute% echo %month% echo %quarter% echo %second% echo %weekinmonth% echo %year%Используя TYPEPERF
с некоторыми усилиями, чтобы быть быстрым и совместимым с различными языковыми настройками и как можно быстрее:@echo off setlocal :: Check if Windows is Windows XP and use Windows XP valid counter for UDP performance ::if defined USERDOMAIN_roamingprofile (set "v=v4") else (set "v=") for /f "tokens=4 delims=. " %%# in ('ver') do if %%# GTR 5 (set "v=v4") else ("v=") set "mon=" for /f "skip=2 delims=," %%# in ('typeperf "\UDP%v%\*" -si 0 -sc 1') do ( if not defined mon ( for /f "tokens=1-7 delims=.:/ " %%a in (%%#) do ( set mon=%%a set date=%%b set year=%%c set hour=%%d set minute=%%e set sec=%%f set ms=%%g ) ) ) echo %year%.%mon%.%date% echo %hour%:%minute%:%sec%.%ms% endlocalМШТА
позволяет вызывать методы JavaScript, подобные методу JScript, продемонстрированному в #3 выше. Имейте в виду, что свойства объекта Date в JavaScript, включающие значения месяца, пронумерованы от 0 до 11, а не от 1 до 12. Таким образом, значение 9 означает октябрь.<!-- : Batch portion @echo off setlocal for /f "delims=" %%I in ('mshta "%~f0"') do set "now.%%~I" rem Display all variables beginning with "now." set now. goto :EOF end batch / begin HTA --> <script> resizeTo(0,0) var fso = new ActiveXObject('Scripting.FileSystemObject').GetStandardStream- , now = new Date(), props=['getDate','getDay','getFullYear','getHours','getMilliseconds','getMinutes', 'getMonth','getSeconds','getTime','getTimezoneOffset','getUTCDate','getUTCDay', 'getUTCFullYear','getUTCHours','getUTCMilliseconds','getUTCMinutes','getUTCMonth', 'getUTCSeconds','getYear','toDateString','toGMTString','toLocaleDateString', 'toLocaleTimeString','toString','toTimeString','toUTCString','valueOf'], output = []; for (var i in props) {output.push(props[i] + '()=' + now[props[i]]())} close(fso.Write(output.join('\n'))); </script>
Команды одной строки
d:\html>systeminfo
Имя узла: DESKTOP-6MHURG5
Название ОС: Майкрософт Windows 10 Pro
Версия ОС: 10.0.20246 Н/Д построение 20246
Изготовитель ОС: Microsoft Corporation
Параметры ОС: Изолированная рабочая станция
Сборка ОС: Multiprocessor Free Информация о сетевых операциях — ipconfig
.
d:\html>ipconfig
Настройка протокола IP для Windows
Адаптер Ethernet Ethernet 2: Состояние среды. . . . . . . . : Среда передачи недоступна. DNS-суффикс подключения . . . . . : Список запущенных процессов — tasklist
.
c:\>tasklist
Имя образа PID Имя сессии № сеанса Память
========================= ======== ================ =========== ============
System Idle Process 0 Services 0 8 КБ
System 4 Services 0 2 688 КБ
Secure System 72 Services 0 23 332 КБ
… Параметры
- / д
- Смена общественного диска или общественного каталога на диске.
- [ диск :
][ путь
] - Задание имени диска (если он отличается от общего) и каталога, в котором требуется
перейти. - [ .
] - Переход в изменяемую папку.
- /?
- Отображение справки в командной строке.
Открыть файл
Чтобы открыть файл в его текущей папке, введите полное имя с расширением. Например, blog.txt или setup.exe.
Параметры
- / д
- Смена популярных дисков или популярных каталогов на диске.
- [ диск :
][ путь
] - Задание имени диска (если он отличается от общего) и каталога, в котором требуется
перейти. - [ .
] - Переход в изменяемую папку.
- /?
- Отображение справки в командной строке.
Примеры
Используемая имя диска команда chdir
позволяет перейти в каталог этого
диск. Например, если ввести команду cd c:
в приглашении каталога C:\Temp, отобразится
следующая строка:
Перейти в каталог отчетов, перейти из следующей команды:
chdir \отчеты
компакт-диск \ отчеты
Перейти из частного каталога в подкаталог
\Specials\Sponsors, дайте задание:
Или, если текущим каталогом является \Specials,
подкаталог \Акции\Спонсоры:
Чтобы перейти из подкаталога в потребительский каталог, выберите команду:
Для вывода на экран имени частного каталога можно использовать команду chdir
или
кд
без параметров. Например, если текущим каталогом является \Public\Jones на диске B,
вызов команды chdir
к следующему результату:
Если при работе на диске D требуются все папки каталогов \Public\Jones и
\Public\Lewis на диске C в корневой каталог диска D, следует последовательности
команда:
chdir c:\public\jones
скопировать c:*.* d:\
chdir c:\public\lewis
скопировать c:*.* d:\
Если требуется наличие всех каталогов \Public\Jones и \Public\Lewis в пути
каталог диска D, позволяющая получить команду:
chdir c:\public\jones
скопировать c:*.* d:
chdir c:\public\lewis
скопировать c:*.* d:
Для вопросов, заседаний, замечаний, предложений и т. п. можете использовать
раздел форума
этого сайта (требуется регистрация).
Заметки
- Работа с расширениями командного процессора
Если расширения командного процессора разрешены (задано по умолчанию), имена папок в пути
к текущему каталогу отображаются точно так же, как на жестком диске, в том же формате
имен папок с учетом регистра. Например, если имя папки на жестком диске C:\Temp,
команда CD C:\TEMP
задает текущий каталог C:\Temp, соответствующий формату имени
этой папки на жестком диске.Чтобы запретить расширения командного процессора для определенного процесса, введите
следующую команду:Для получения дополнительных сведений о разрешении и запрещении расширений командного
процессора щелкните ссылку CMD
. - Переход в корневой каталог
Корневой каталог является вершиной дерева каталогов на диске. Чтобы перейти в корневой
каталог, введите следующую команду: - Переход из основного каталога одного диска в основной каталог другого
Чтобы перейти в основной каталог диска отличного от текущего, введите следующую команду:
Чтобы проверить переход к этому каталогу, введите одну из следующих команд:
- Команда chdir
с другими параметрами доступна в консоли восстановления.
Создать папку — mkdir или md
Создаём пустую папку code
внутри папки html
:
d:\html>mkdir coded:\html>dir Содержимое папки d:\html
03.11.2020 19:23 <DIR> .
03.11.2020 19:23 <DIR> ..
03.11.2020 19:25 <DIR> code 0 файлов 0 байт 3 папок 253 389 438 976 байт свободно Создаём несколько пустых вложенных папок — для этого записываем их через косую черту:
d:\html>mkdir css\js
d:\html>dir Том в устройстве D имеет метку DATA Серийный номер тома: 0000-0000 Содержимое папки d:\html
03.11.2020 19:23 <DIR> .
03.11.2020 19:23 <DIR> ..
03.11.2020 19:25 <DIR> code
03.11.2020 19:29 <DIR> css Создаётся папка css
, внутри которой находится папка js
. Чтобы проверить это, используем команду tree
. Она показывает дерево папок.
Переименование файла — ren или rename
Последовательно вводим ren
, старое и новое имя файла.
d:\html>dir Содержимое папки d:\html
03.11.2020 19:23 <DIR> .
03.11.2020 19:23 <DIR> ..
03.11.2020 19:59 0 blag.txt
d:\html>ren blag.txt blog.txt
d:\html>dir Содержимое папки d:\html
03.11.2020 19:23 <DIR> .
03.11.2020 19:23 <DIR> ..
03.11.2020 19:59 0 blog.txt Показать дерево папок — tree
В любом момент мы можем увидеть структуру папок. Для этого используется команда tree
.
d:\html>tree
Структура папок тома DATA
Серийный номер тома: 0000-0000
D:.
├───code
└───css └───js Если вы хотите посмотреть содержимое всего диска, введите tree
в корне нужного диска. Получится красивая анимация, а если файлов много, то ещё и немного медитативная.
Удаление файла — del или erase
Команда для удаления одного или нескольких файлов.
d:\html>del blog.txt Материалы по теме
«Доктайп» — журнал о фронтенде. Читайте, слушайте и учитесь с нами.
Перейти в другую папку — cd
Команда cd
без аргументов выводит название текущей папки.
Перейти в папку внутри текущего каталога:
C:\content-server>cd assets
C:\content-server\assets> Перейти на одну папку вверх:
C:\content-server\assets>cd ..
C:\content-server> Перейти в папку на другом диске:
c:\content-server>cd /d d:/
d:\> Чтобы просто изменить диск, введите c:
или d:
.
Примеры
Используемая с именем диска команда chdir
позволяет перейти в текущий каталог этого
диска. Например, если ввести команду cd c:
в приглашении каталога C:\Temp, отобразится
следующая строка:
Чтобы перейти в текущий каталог Reports, введите одну из следующих команд:
Чтобы перейти из текущего каталога в подкаталог \Specials\Sponsors, введите следующую
команду:
Или, если текущим каталогом является \Specials, введите следующую команду, чтобы перейти в
подкаталог \Specials\Sponsors:
Чтобы перейти из подкаталога в родительский каталог, введите следующую команду:
Для вывода на экран имени текущего каталога можно использовать команду
chdir
или
без параметров. Например, если текущим каталогом является \Public\Jones на диске B,
вызов команды chdir
приведет к следующему результату:
Если при работе на диске D требуется скопировать все файлы каталогов \Public\Jones и
\Public\Lewis на диске C в корневой каталог диска D, введите следующую последовательность
команд:
copy c:*.* d:\
copy c:*.* d:\
Если требуется скопировать все файлы каталогов \Public\Jones и \Public\Lewis в текущий
каталог диска D, введите следующие команды:
copy c:*.* d:
copy c:*.* d:
Заметки
- Работа с расширениями командного процессора
Если расширения командного процессора разрешены (задано по умолчанию), имена папок в пути
к текущему каталогу отображаются точно так же, как на жестком диске, в том же формате
имен папок с учетом регистра. Например, если имя папки на жестком диске C:\Temp,
команда CD C:\TEMP
задает текущий каталог C:\Temp, соответствующий формату имени
этой папки на жестком диске.Чтобы запретить расширения командного процессора для определенного процесса, введите
следующую команду:Для получения дополнительных сведений о разрешении и запрещении расширений командного
процессора щелкните ссылку CMD
. - Переход в корневой каталог
Корневой каталог является вершиной дерева каталогов на диске. Чтобы перейти в корневой
каталог, введите следующую команду: - Переход из основного каталога одного диска в основной каталог другого
Чтобы перейти в основной каталог диска отличного от текущего, введите следующую команду:
Чтобы проверить переход к этому каталогу, введите одну из следующих команд:
- Команда chdir
с другими параметрами доступна в консоли восстановления.
Примеры
Используемая с именем диска команда chdir
позволяет перейти в текущий каталог этого
диска. Например, если ввести команду cd c:
в приглашении каталога C:\Temp, отобразится
следующая строка:
Чтобы перейти в текущий каталог Reports, введите одну из следующих команд:
Чтобы перейти из текущего каталога в подкаталог \Specials\Sponsors, введите следующую
команду:
Или, если текущим каталогом является \Specials, введите следующую команду, чтобы перейти в
подкаталог \Specials\Sponsors:
Чтобы перейти из подкаталога в родительский каталог, введите следующую команду:
Для вывода на экран имени текущего каталога можно использовать команду chdir
или
cd
без параметров. Например, если текущим каталогом является \Public\Jones на диске B,
вызов команды chdir
приведет к следующему результату:
Если при работе на диске D требуется скопировать все файлы каталогов \Public\Jones и
\Public\Lewis на диске C в корневой каталог диска D, введите следующую последовательность
команд:
copy c:*.* d:\
copy c:*.* d:\
Если требуется скопировать все файлы каталогов \Public\Jones и \Public\Lewis в текущий
каталог диска D, введите следующие команды:
copy c:*.* d:
copy c:*.* d:
Для вопросов, обсуждений, замечаний, предложений и т. п. можете использовать
раздел форума
этого сайта (требуется регистрация).
Новый раздел о средствах командной строки в рамках этого же проекта расположен
здесь
Содержимое текущей папки — dir
Выводит список файлов и папок в текущей папке.
C:\content-server>dir Том в устройстве C имеет метку SYSTEM Серийный номер тома: 2C89-ED9D Содержимое папки C:\content-server
06.10.2020 00:41 <DIR> .
06.10.2020 00:37 <DIR> .circleci
16.07.2020 16:04 268 .editorconfig
16.07.2020 16:04 10 .eslintignore
16.07.2020 16:04 482 .eslintrc
06.10.2020 00:37 <DIR> .github
16.07.2020 16:04 77 .gitignore
06.10.2020 00:41 <DIR> assets
06.10.2020 00:41 <DIR> gulp
16.07.2020 16:10 379 gulpfile.js
16.07.2020 16:10 296 320 package-lock.json
16.07.2020 16:10 751 package.json
16.07.2020 16:04 509 README.md Chdir (Cd)
Вывод имени текущего каталога или переход в другую папку. При использовании только с именем
диска (например chdir
C:) команда chdir
выводит имена текущих диска и папки.
Выполненная без параметров команда chdir
выводит текущие диск и каталог.
Изменение вида приглашения
Вы можете изменить вид приглашения для командной строки. Как правило используется формат типа C:\> (текущий диск и угловая скобка)
. Откройте раздел
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
и создайте параметр типа REG_EXPAND_SZ
, которому нужно присвоить одно из следующих значений:
- $B – | (вертикальная черта)
- $D – текущая дата
- $G – > (знак больше)
- $L – < (знак меньше)
- $N – текущий диск
- $P – текущий диск и путь
- $Q – = (знак равно)
- $T – текущее время
- $V – версия Windows
- $ – $ (знак доллара)
Запрет на расширенный режим командного процессора CMD. EXE
Существует возможность запрета на расширенный режим командного процессора (cmd.exe). Например, в расширенном режиме существуют такие команды как del, erase, chdir, goto
. Для запрета найдите или создайте параметр типа DWORD
в разделе
\Software\Microsoft\Command Processor
и присвойте ему значение 0. Для включения этого режима используйте значение 1
Отложенное расширение переменных среды
Отложенное расширение переменных среды по умолчанию не включено. Для включения используйте параметр типа DWORD
, равный 1 в разделе
\Software\Microsoft\Command Processor
Запрет на режим командной строки и обработки bat-файлов
Существует возможность запрета на режим командной строки (cmd.exe) и обработки bat-файлов. Для этого найдите или создайте параметр типа DWORD
в разделе
Автонабор команд
Для включения возможности автонабора команд по нажатию клавиши Tab
, в разделе
\Software\Microsoft\Command Processor
установите значение параметра типа DWORD
равным 9, что соответствует идентификатору клавиши Tab
. Для клавиши Backspace
используйте 8, для клавиш Ctrl-D
– 4, для Ctrl-F
– 6
Откуда запускать командную строку
По умолчанию консоль cmd.exe
стартует в папке профиля пользователя, но этот порядок вполне можно изменить. Для этого надо в разделе
\Software\Microsoft\Command Processor
создать строковый параметр с указанием в его значении команды перехода к необходимой директории – например, – CD /D C:\ – именно в ней и будет стартовать консоль. Кстати говоря, в значении этого параметра можно указать и специально заготовленный bat-файл с разными командами, с параметрами переменных окружения и т. п. Получится что-то вроде autoexec.bat для консоли, да и редактировать такой файл удобнее, чем параметры в реестре.
Быстрый запуск командной строки из контекстного меню
Если вы часто пользуетесь командной строкой, то возможно вам будет гораздо удобнее поместить вызов этой команды в контекстное меню папки в Проводнике. Для этого добавьте в раздел
новый подраздел Командная строка
. Затем в созданном подразделе создайте новый подраздел Command
и присвойте параметру по умолчанию данного подраздела значение cmd.exe /k “%1”
. Теперь, щелкнув правой кнопкой мыши на любой папке в Проводнике, вы можете выбрать пункт Командная строка
, которая запустить командный процессор в этой папке.
Удалить папку — rmdir или rd
Чтобы удалить конкретную папку в текущей, введите команду rmdir
:
d:\html\css>rmdir js При этом удалить можно только пустую папку. Если попытаться удалить папку, в которой что-то есть, увидим ошибку:
d:\html\css>d:\html>rmdir css
Папка не пуста. Чтобы удалить дерево папок, используйте ключ /s
. Тогда командная строка запросит подтверждение перед тем, как удалить всё.
d:\html>rmdir css /s
css, вы уверены [Y(да)/N(нет)]? y Chdir (Cd)
Вывод имени текущего каталога или переход в другую папку. При использовании только с именем
диска (например chdir
C:) команда chdir
выводит имена текущих диска и папки.
Выполненная без параметров команда chdir
выводит текущие диск и каталог.
Открыть доступ
Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно
-
130 курсов, 2000+ часов теории
-
1000 практических заданий в браузере
-
360 000 студентов
Наши выпускники работают в компаниях:
Chdir (Cd)
Вывод имени текущего каталога или переход в другую папку. При использовании только с именем
диска (например chdir
C:) команда chdir
выводит имена текущих диска и папки.
Выполненная без параметров команда chdir
выводит текущие диск и каталог.
Параметры
- /d
- Смена текущего диска или текущего каталога на диске.
- [ диск :
][ путь
] - Задание имени диска (если он отличается от текущего) и каталога, в который требуется
перейти. - [ .
] - Переход в родительскую папку.
- /?
- Отображение справки в командной строке.
Справка по командам — help
Команда help
без аргументов выводит список всех возможных команд. help
вместе с именем команды выведет справку по этой команде.
d:\html>help tree
Графическое представление структуры папок или пути.
TREE [диск:][путь] [/F] [/A] /F Вывод имён файлов в каждой папке. /A Использовать символы ASCII вместо символов национальных алфавитов. В этой статье приведены не все команды и не все их возможности, но вы всегда можете воспользоваться командой help
и узнать о том, что ещё может командная строка.
👉🏻 Больше статей о фронтенде и работе в айти в телеграм-канале.
Заметки
- Работа с расширениями командного процессора
Если расширения командного процессора разрешены (задано по умолчанию), имена папок в пути
к текущему каталогу отображаются точно так же, как на жестком диске, в том же формате
имен папок с учетом регистра. Например, если имя папки на жестком диске C:\Temp,
команда CD C:\TEMP
задает текущий каталог C:\Temp, соответствующий формату имени
этой папки на жестком диске.Чтобы запретить расширения командного процессора для определенного процесса, введите
следующую команду:Для получения дополнительных сведений о разрешении и запрещении расширений командного
процессора щелкните ссылку CMD
. - Переход в корневой каталог
Корневой каталог является вершиной дерева каталогов на диске. Чтобы перейти в корневой
каталог, введите следующую команду: - Переход из основного каталога одного диска в основной каталог другого
Чтобы перейти в основной каталог диска отличного от текущего, введите следующую команду:
Чтобы проверить переход к этому каталогу, введите одну из следующих команд:
- Команда chdir
с другими параметрами доступна в консоли восстановления.



