Как найти статические классы и методы PowerShell? - PullRequest
2 голосов
/ 20 сентября 2011

Как узнать, какие статические классы и методы доступны в PowerShell 2.0?

Ответы [ 4 ]

7 голосов
/ 20 сентября 2011

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

 [AppDomain]::CurrentDomain.GetAssemblies() | foreach { $_.GetTypes() } | foreach { $_.GetMethods() } | where { $_.IsStatic } | select DeclaringType, Name | format-table

Помните, что вы не ограничены статическими методами, вы также можете создавать экземпляры типов с помощью new-object и вызывать методы экземпляра.Вы можете использовать get-member в экземпляре, чтобы получить методы для типа.

Также, если вы хотите отобразить список доступных CmdLets, просто вызовите:

Get-Command
3 голосов
/ 21 сентября 2011

Чтобы получить статические члены типа или объекта, передайте его Get-Member и укажите статический переключатель:

[math] | Get-Member -Static
0 голосов
/ 05 сентября 2012

Мистер Дрис, вы мужчина !!!Полностью сделан мой день!

Я просто позволил себе немного изменить его, чтобы он возвращал весь список без дубликатов:

PS C:\Users\Administrator> [AppDomain]::CurrentDomain.GetAssemblies() | foreach { $_.GetTypes() } | foreach { $_.GetMethods() } | where { $_.IsStatic } | select DeclaringType | Out-File assemblies.txt

, а затем читал файл buildmblies.txt, но получал только уникальные строки:

cat .\assemblies.txt Get-Unique
0 голосов
/ 20 сентября 2011

У вас есть классы (статические или иные) из .NET Framework.

Получив класс, вы можете использовать Get-Member:

[Environment] | Get-Member

PS: "Windows PowerShell«Поваренная книга» Ли Холмса содержит приложение, в котором перечислены некоторые полезные классы с точки зрения Powershell / SysAdmin.Этот список (и книга) очень полезен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...