Справочник командлетов Windows PowerShell

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

Если Вы, выполнив вышеуказанную команду у себя на компьютере, не нашли командлет из представленного ниже списка (или тот который Вам нужен), то скорей всего у Вас не установлен необходимый модуль. Модули PowerShell для соответствующих ролей и компонентов сервера устанавливаются автоматически одновременно с ними. В случае если Вы хотите воспользоваться данными модулями на системе без установленных ролей и компонентов, то Вы всегда можете установить соответствующие «Средства удаленного администрирования сервера», которые добавляют не только оснастки управления, но и необходимые командлеты. Например, для того чтобы администрировать Active Directory с помощью Windows PowerShell на компьютере, который не является контроллером домена, необходимо установить модуль Active Directory для Windows PowerShell (RSAT-AD-PowerShell).

Примечание! Данный справочник составлен на основе командлетов версии PowerShell 5.0 в операционной системе Windows Server 2016.

Полезные командлеты Windows PowerShell
В данном разделе я перечислю командлеты PowerShell, которые Вы точно будете использовать.

Get-Help – показывает справку по командлету, функции и общую справку по Windows PowerShell. Справка бывает нескольких типов: краткая, детальная, полная и вывод только примеров;
Update-Help — загружает и устанавливает новые файлы справки, т.е. обновление справки;
Get-Command – командлет поиска нужной команды, можно искать как по глаголу, так и по существительному, также возможно использование маски, если Вы не знаете точное наименование глагола или существительного;
Get-Alias – показывает псевдонимы, все или конкретной команды;
Get-PSDrive – показывает подключенные диски;
Get-Member – выводит свойства и методы, которые есть у объекта;
Get-WindowsFeature – выводит сведения о доступных ролях и компонентах сервера;
Install-WindowsFeature (эквивалентен Add-WindowsFeature) — устанавливает роли или компоненты на указанный сервер;
Uninstall-WindowsFeature (эквивалентен Remove-WindowsFeature) – удаляет роли или компонента сервера;
Get-History — возвращает список команд, введенных в ходе текущей сессии.

Работа с переменными
В PowerShell для того чтобы создать переменную, задать ей значение или получить это значение обычно используют знак доллар $ (коротко и удобно), но для этих целей существуют специальные командлеты.

Get-Variable – выводит список переменных и их значения (или одну указанную переменную);
New-Variable – создает новую переменную;
Set-Variable – задает значение переменной. Если переменная с указанным именем не существует, то она будет создана;
Clear-Variable — удаляет значение переменной;
Remove-Variable — удаляет переменную и ее значение.

Форматирование в Windows PowerShell
В Windows PowerShell существует набор командлетов, которые предназначены для форматирования вывода результата работы командлета. Они позволяют пользователю отобразить результат в том виде, в котором ему удобно просматривать данный результат.

Format-List – вывод результата команды в формате списка свойств, где на каждой новой строке отдельное свойство;
Format-Table — вывод результата команды в виде таблицы;
Format-Wide — вывод результата команды в виде широкой таблицы, в которой отображается только одно свойство каждого объекта;
Format-Custom – в данном случае форматирование вывода происходит с использованием пользовательского представления.

Импорт и экспорт
PowerShell позволяет импортировать и экспортировать данные в разных распространенных форматах, например, CSV или XML, а также перенаправлять вывод результата работы команды во внешний файл или на принтер.

Export-Csv – экспорт данных в формат CSV;
Import-Csv – импортирует данные из CSV файла;
Export-Clixml — экспорт данных в формат XML;
Import-Clixml — импортирует файл CLIXML и создает соответствующие объекты в оболочке Windows PowerShell;
Out-File — посылает вывод результата работы командлета во внешний файл (например, в TXT);
Out-Printer — вывод результата работы команды на принтер;
Import-Module — добавляет модули в текущей сессии.

Работа с сетью в Windows PowerShell
Для администрирования сети в Windows PowerShell существуют такие командлеты как:

Disable-NetAdapter – командлет отключает сетевой адаптер;
Enable-NetAdapter – данный командлет включает сетевой адаптер;
Rename-NetAdapter — переименовывает сетевой адаптер;
Restart-NetAdapter — перезапускает сетевой адаптер;
Get-NetIPAddress – выводит информацию о конфигурации IP-адреса;
Set-NetIPAddress — изменяет конфигурацию IP-адреса;
New-NetIPAddress — создает и настраивает IP-адрес;
Remove-NetIPAddress — удаляет IP-адрес и его конфигурацию;
Get-NetRoute — выводит таблицу маршрутизации IP;
Set-NetRoute — изменяет таблицу маршрутизации IP;
New-NetRoute — создает запись в таблице маршрутизации IP;
Remove-NetRoute — удаляет одну или несколько записей (IP маршрутов) из таблицы маршрутизации IP;
Get-NetIPv4Protocol — выводит информацию о конфигурации протокола IPv4;
Get-NetIPv6Protocol — выводит информацию о конфигурации протокола IPv6;
Get-NetIPInterface — выводит информацию о свойствах интерфейса IP;
Get-NetTCPSetting — показывает информацию о настройках и конфигурации TCP;
Test-Connection – командлет посылает ICMP пакеты к одному или нескольким компьютерам, т.е. «пингует» компьютеры.

Работа с элементами
В Windows PowerShell есть командлеты, которые умеют работать с элементами, под элементами здесь можно понимать: файлы, папки, ключи реестра и так далее.

Clear-Item — очищает содержимое элемента, но не удаляет сам элемент;
Copy-Item – копирует элемент;
Get-Item — получает элемент в указанном месте;
Invoke-Item — выполняет действие по умолчанию над указанным элементом;
Move-Item – перемещает элемент;
New-Item – создает новый элемент;
Remove-Item – удаляет указанные элементы;
Rename-Item — переименовывает элемент в пространстве имен поставщика Windows PowerShell;
Set-Item — изменяет элемент;
Get-ChildItem — возвращает элементы и дочерние элементы в одном или нескольких определенных местах;
Get-Location – выводит информацию о текущем местонахождении.

Командлеты для работы с Active Directory (AD)
Windows PowerShell, конечно же, позволяет работать со службой каталогов Active Directory. Для этих целей существует немало командлетов, вот некоторые из них:

New-ADUser – создание нового пользователя в Active Directory;
Get-ADUser – выводит информацию о пользователях Active Directory;
Set-ADUser — изменяет пользователя Active Directory;
Remove-ADUser — удаляет пользователя Active Directory;
New-ADGroup – командлет создает группу в Active Directory;
Get-ADGroup – выводит информацию о группе или выполняет поиск, чтобы получить несколько групп из Active Directory;
Set-ADGroup – командлет изменяет группу в Active Directory;
Remove-ADGroup — удаление группы в Active Directory;
Add-ADGroupMember — командлет добавляет учетные записи пользователей, компьютеров или групп в качестве новых членов группы Active Directory;
Get-ADGroupMember — выводит информацию о членах группы Active Directory;
Remove-ADGroupMember — удаление элементов из группы Active Directory;
Set-ADAccountPassword — сброс пароля учетной записи Active Directory;
Disable-ADAccount — отключает учетную запись Active Directory.
Enable-ADAccount — включает учетную запись Active Directory;
Unlock-ADAccoun — разблокирует учетную запись Active Directory;
New-ADComputer — создание новой учетной записи компьютера в Active Directory;
Get-ADComputer — выводит информацию об одном или нескольких компьютерах в Active Directory;
Set-ADComputer — изменение учетной записи компьютера в Active Directory;
Remove-ADComputer — удаление компьютера из Active Directory.

Работа с Hyper-V

Для работы с Hyper-V в Windows PowerShell существует много командлетов, вот небольшой перечень:

New-VM — создание новой виртуальной машины;
Set-VM — настройка виртуальной машины;
Start-VM — запуск виртуальной машины;
Stop-VM — закрытие, выключение или сохранение виртуальной машины;
Import-VM — импорт виртуальной машины из файла;
Move-VM — перемещение виртуальной машины на новый Hyper-V хост;
Remove-VM — удаление виртуальной машины;
Rename-VM — переименование виртуальной машины;
New-VHD — создание одного или нескольких новых виртуальных жестких дисков;
Set-VHD – настройка виртуального жесткого диска;
Test-VHD — тестирование виртуального жесткого диска на предмет обнаружения проблем, которые сделали бы его непригодным для использования;
Add-VMDvdDrive — добавляет DVD диск к виртуальной машине;
Remove-VMDvdDrive — удаляет DVD-диск из виртуальной машины;
Add-VMHardDiskDrive — добавляет жесткий диск к виртуальной машине;
Remove-VMHardDiskDrive — удаляет один или несколько виртуальных жестких дисков (VHD) из виртуальной машины;
Add-VMNetworkAdapter — добавляет виртуальный сетевой адаптер на виртуальной машине;
Remove-VMNetworkAdapter — удаляет один или несколько виртуальных сетевых адаптеров из виртуальной машины;
Copy-VMFile — копирование файлов на виртуальную машину;
Get-VMVideo – выводит информацию о настройках видео для виртуальных машин;
Move-VMStorage — перемещение хранилища виртуальной машины.

Работа с фоновыми заданиями
В Windows PowerShell есть возможность запускать задачи в фоновом режиме, для того чтобы, не дожидаясь окончания работы команды (для случаев, когда задача выполняется долго), продолжать работать в текущей сессии. Для работы с фоновыми заданиями в PowerShell есть следующие командлеты:

Start-Job – запустить фоновую задачу;
Stop-Job – остановить фоновую задачу
Get-Job – посмотреть список фоновых задач;
Receive-Job – посмотреть результат выполнения фоновой задачи;
Remove-Job – удалить фоновую задачу;
Wait-Job – перевести фоновую задачу на передний план, для того чтобы дожидаться ее окончания.

Работа с объектами
Так как PowerShell работает с объектами, он позволяет выполнять некие действия над этими объектами, например:

Measure-Object – командлет позволяет рассчитывать на основе свойств объектов такие числовые агрегирующие параметры как: минимальное, максимальное, среднее значение, сумму и количество. Например, Вы хотите узнать максимальный или средний размер файла в определенном каталоге, или просто узнать количество файлов (запущенных процессов, служб и так далее);
Select-Object – с помощью данного командлета можно выбрать определенные объекты или свойства этих объектов, например Вы хотите выводить только название файла и его размер;
Sort-Object — сортирует объекты по значениям свойств;
Where-Object – командлет для того чтобы ставить условие для выборки объектов на основе значений их свойств;
Group-Object – группирует объекты, которые содержат одинаковое значение для заданных свойств;
ForEach-Object – перебор объектов с целью выполнения определенной операции над каждым из этих объектов.

Командлеты PowerShell для удаленного управления
С помощью Windows PowerShell можно выполнять команды не только на локальном компьютере, но и на одном или даже на нескольких удаленных компьютерах.

Enter-PSSession — запускает интерактивный сеанс с удаленным компьютером;
Exit-PSSession — завершает интерактивный сеанс с удаленным компьютером;
New-PSSession — создает постоянное подключение к локальному или удаленному компьютеру;
Remove-PSSession — закрывает один или несколько сеансов Windows PowerShell;
Disconnect-PSSession — отсоединяется от сеанса;
Connect-PSSession — подключается к отключенным сеансам;
Get-PSSession — получает сеансы Windows PowerShell на локальных и удаленных компьютерах;
Invoke-Command — выполняет команды на локальном и удаленных компьютерах.

Работа со службами и процессами
PowerShell, конечно же, умеет управлять службами и процессами в Windows, для этого существуют такие командлеты как:

Get-Process – выводит информацию о запущенных процессах на компьютере;
Start-Process – запускает один или несколько процессов на компьютере;
Stop-Process — останавливает один или несколько запущенных процессов;
Get-Service – выводит информацию о службах;
Restart-Service – перезапускает службу;
Start-Service – запускает службу;
Stop-Service — останавливает службу;
Suspend-Service – приостанавливает работу службы;
Set-Service – с помощью данного командлета можно изменить свойства службы, например, описание, отображаемое имя и режим запуска. Также его можно использовать для запуска, остановки или приостановки службы.

Работа с компьютером
Windows PowerShell позволяет выполнять административные задачи для операционной системы и компьютера в целом, например, перезапустить операционную систему или переименовать компьютер.

Restart-Computer – командлет перезапускает операционную систему (перезагружает компьютер);
Stop-Computer – выключает компьютер;
Rename-Computer – переименовывает компьютер;
Checkpoint-Computer — создает точку восстановления системы на локальном компьютере;
Restore-Computer — запускает восстановление системы на локальном компьютере;
Disable-ComputerRestore — отключает функцию восстановления системы на указанном диске файловой системы;
Enable-ComputerRestore — включает функцию восстановления системы на указанном диске файловой системы;
Remove-Computer — удаляет локальный компьютер из домена;
Get-EventLog – выводит информацию о событиях в журнале событий, или список журналов событий на локальном или удаленном компьютере;
Clear-EventLog — удаляет записи из указанных журналов событий.

Работа с контентом
Для управления контентом, например, текстом в файле в Windows PowerShell существуют специальные командлеты, такие как:

Get-Content – получает содержимое элемента (например, считывает файл);
Add-Content – добавляет содержимое в заданные элементы, например, текст в файл;
Clear-Content — удаляет содержимое элемента, но не удаляет сам элемент;
Set-Content — записывает или заменяет содержимое в элемент с новым содержанием.

Другие командлеты Windows PowerShell
Также хотелось бы выделить следующие командлеты Windows PowerShell, которые наверняка Вам понадобятся и будут полезны.

Get-ExecutionPolicy – с помощью данного командлета можно узнать действующую политику выполнения Windows PowerShell для текущего сеанса;
Set-ExecutionPolicy – командлет изменяет политику выполнения Windows PowerShell;
Write-Host – выводит информацию на экран (пишет текст);
Read-Host – считывает строку ввода из консоли;
Write-Warning – выводит предупреждающее сообщение;
Write-Error – командлет объявляет ошибку и выводит ее в поток ошибок;
Get-Date – возвращает текущую дату и время;
Set-Date – командлет изменяет системную дату и время на компьютере.
Вот мы с Вами и рассмотрели полезные и часто используемые командлеты Windows PowerShell, надеюсь, этот справочник будет Вам полезен, удачи!

Обновлено: 16.04.2019 — 16:10

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *