如何找到PowerShell 2.0中可用的静态类和方法?
答案 0 :(得分:7)
您可以使用PowerShell中的任何.NET类型及其静态方法。要枚举当前加载到AppDomain中的所有内容,您可以执行以下操作:
[AppDomain]::CurrentDomain.GetAssemblies() | foreach { $_.GetTypes() } | foreach { $_.GetMethods() } | where { $_.IsStatic } | select DeclaringType, Name | format-table
请记住,您不仅限于静态方法,还可以使用new-object
实例化类型并调用实例方法。您可以在实例上使用get-member
来获取类型的方法。
此外,如果要列出可用的CmdLets,只需调用:
Get-Command
答案 1 :(得分:3)
要获取类型或对象的静态成员,请将其传递给Get-Member并指定静态开关:
[math] | Get-Member -Static
答案 2 :(得分:0)
您拥有.NET框架中的类(静态或其他)。
上课后,您可以使用Get-Member
:
[Environment] | Get-Member
PS:Lee Holmes的“Windows PowerShell Cookbook”有一个附录,列出了一些有用的类,从Powershell / SysAdmin的角度来看。那份清单(和这本书)非常有用。
答案 3 :(得分:0)
先生,你是男人!完全是我的一天!
我只是冒昧地修改了它,所以它返回整个列表而没有重复:
PS C:\Users\Administrator> [AppDomain]::CurrentDomain.GetAssemblies() | foreach { $_.GetTypes() } | foreach { $_.GetMethods() } | where { $_.IsStatic } | select DeclaringType | Out-File assemblies.txt
然后读取assemblies.txt文件,但只获取唯一的行:
cat .\assemblies.txt Get-Unique