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

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








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




PS C:WindowsSystem32> 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 > .testtest.txt




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




PS C:> md test2

    Каталог: C:

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----        01.07.2021     16:16                test2

PS C:> move .testtest.txt .test2
PS C:> dir test2

    Каталог: C:test2


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        01.07.2021     16:15             16 test.txt

PS C:> copy .test2test.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



2021-07-01T16:52:55
Администрирование Windows