PowerShell первые шаги

Первоначально использование PowerShell выглядит весьма запутанно, но затем начинает просматриваться логика и работа с ним кажется уже простым. Все названия командлетов стандартизированы, имена выглядят как «действие-объект«. Например, чтобы получить данные объекта, используем действие «Get-*«, установить “Set-*”, вывод — “Out-*”, остановить — «Stop-*» и так далее. Список всех доступных команд можно просмотреть, выполнив «Get-Command», получить помощь — «Get-Help«.
Например, просмотрим список процессов, рассортируем их по использованию CPU в убывающем порядке и выберем 10 самых прожорливых:

PS> Get-Process | Sort CPU -Descending | Select -First 10

Все достаточно просто. Прожорливый процесс легко убить средствами PowerShell:

PS> Get-Process | Sort CPU -Descending | Select -First 1 | stop-process


Чтобы узнать какие диски доступны в PS вводим:

PS> Get-PSDrive

Обратите внимание в списке будут и верки реестра HKCU и HKLM, к которым можно обратиться как обычному диску:

PS> cd HKLM:
PS HKLM>

Теперь можно перемещаться по выбранной ветке, просматривать, создавать и удалять объекты.
Для PS разработано большое количество командлетов и часто вместо того чтобы писать что-то самому просто следует поискать. Сообществом PS cоздан репозитарий командлетов PoshCode Cmdlets (powershellcommunity.org/Scripts/tabid/81/Default.aspx), который является неким аналогом Perl CPAN. Здесь можно найти решения практически на все случаи. Например нужен сниффер на PS, нет ничего проще. Качаем с файл Get-Packet.ps1 с сайта blog.robbiefoust.com/?p=68 и запускаем.

PS> Get-Packet.ps1 -Statistics

Все параметры описанны внутри файла.
Другой командлет Analyze-Packet (blog.sapien.com/index.php/2008/08/14/analyze-packet-reloaded) позволит получить статистику по пакетам.
По умолчанию выполнение сценариев в PowerShell запрещено, поэтому не все команды удастся запустить. Просмотреть текущий статус политики выполнения можно командой:

PS> Get-ExecutionPolicy
AllSigned

Возможны четыре политики:

PS> Set-ExecutionPolicyRemoteSigned
Теги:

Понравилась статья? Оставьте комментарий или подпишитесь на RSS рассылку.

Комментарии

Комментариев пока что нет

Оставить комментарий

(required)

(required)