PowerShell позволяет выполнять команды DOS, знакомые вам по командной строке «cmd.exe«. Это реализовано с помощью псевдонимов (alias).
С помощью команды 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