PowerShell использование команд DOS

PowerShell позволяет выполнять команды DOS, знакомые вам по командной строке cmd.exe. Это реализовано с помощью псевдонимов (alias).

Популярные команды DOS

С помощью команды cd можете перейти в другую директорию, а с помощью dir посмотреть содержимое этой директории:

PS C:\Windows\System32> cd C:\Windows\
PS C:\Windows> dir
    Каталог: C:\Windows
Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----        13.10.2020     11:21                addins
d-----        14.10.2020      8:01                appcompat
d-----        11.06.2021     17:52                apppatch
d-----        01.07.2021      9:26                AppReadiness
d-r---        15.04.2021     21:05                assembly
d-----        11.06.2021     17:52                bcastdvr
d-----        13.10.2020     11:16                Boot
***сократил вывод***

Чтобы вывести что-нибудь в терминал используем echo:

PS C:\Windows> echo test
test

Для того чтобы создать новый каталог существует команда md:

PS C:\> md test
    Каталог: C:\
Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----        01.07.2021     16:12                test

А создать файл можно с помощью echo добавив перенаправление вывода в файл:

PS C:\> echo 12345 > .\test\test.txt

Перенести файл в другой каталог можно с помощью команды move, а скопировать с помощью команды copy:

PS C:\> md test2
    Каталог: C:\
Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----        01.07.2021     16:16                test2

PS C:\> move .\test\test.txt .\test2\

PS C:\> dir test2
    Каталог: C:\test2
Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        01.07.2021     16:15             16 test.txt

PS C:\> copy .\test2\test.txt .\test\

Псевдонимы команд

Все эти команды вам могут быть знакомы по командной строке cmd.exe. Но в PowerShell на самом деле вы выполняете псевдонимы команд, которые выполняют те же действия что и команды DOS. Посмотреть на список этих псевдонимов можно командой `Get-Alias:

PS C:\Windows> Get-Alias

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Alias           % -> ForEach-Object
Alias           ? -> Where-Object
Alias           ac -> Add-Content
Alias           asnp -> Add-PSSnapin
Alias           cat -> Get-Content
Alias           cd -> Set-Location
Alias           CFS -> ConvertFrom-String                          3.1.0.0    Microsoft.PowerShell.Utility
Alias           chdir -> Set-Location
Alias           clc -> Clear-Content
Alias           clear -> Clear-Host
Alias           clhy -> Clear-History
Alias           cli -> Clear-Item
Alias           clp -> Clear-ItemProperty
Alias           cls -> Clear-Host
Alias           clv -> Clear-Variable
Alias           cnsn -> Connect-PSSession
***Сократил вывод***

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

PS C:\Windows> Set-Location C:\
PS C:\>

Итог

Таким образом мы вспомнили некоторые команды командной строки cmd.exe:

  • cd — используется для смены текущей директории, другими словами чтобы перемещаться по дереву каталогов;
  • dir — нужна для отображения содержимого текущий или указанной директории;
  • md — предназначена для создания нового каталога;
  • echo — выводит переданный ей текст на терминал, но можно вывод перенаправить в файл;
  • move — используется для перемещения файлов и каталогов;
  • copy — нужна для копирования файлов и каталогов.

Узнали что многие команды командной строки можно выполнить из PowerShell благодаря псевдонимам команд, которые выполняют те же действия. А чтобы получить весь список таких псевдонимов можно выполнить: Get-Alias.


Если понравилась статья, подпишись на мой канал в  VK  или  Telegram .