使用 Powershell 检索不理解的命令

使用 Powershell 检索不理解的命令


尝试使用 Powershell 完成 Powershell 的命令行

使用 Powershell 时,有时您会忘记某个 cmdlet 或想要了解哪些 cmdlet 可用。在这种情况下,最好在互联网上查找,但您也可以使用 Powershell 函数来完成。

以下方法对于使用 Powershell 调查 Powershell 非常有用。

  • 输入补全
  • 搜索 cmdlet
  • 寻求帮助

输入补全


说“搜索”可能有点轻描淡写,但 Powershell 有一个功能可以完成您部分键入的 cmdlet。它具有与 Linux shell 相同的功能。

  • 输入 cmdlet 的一部分并按Tab
  • 一半输入 cmdlet,然后按Ctrl + 空格键

此功能使您可以更快地键入 cmdlet,而无需记住确切的拼写。补全可用于输入命令和选项、选择文件路径以及选择常量。

如果您输入 cmdlet 的一部分,然后按Tab 键,则您输入的部分命令将被完成。如果再次按Tab,将会出现更多建议。如果您想返回显示的候选,请按Shift + Tab 。

PS C:\Users\Main> Get-help Get-Chil       #部分入力然后按Tab键
PS C:\Users\Main> Get-help Get-ChildItem #命令会自动补充完成

使用Ctrl + Space完成时,将显示所有可能的完成,您可以使用箭头键选择一个。当一个选项完成后,底部会显示该选项的格式和可能的值等信息。

PS > Get-Net                       #输入到Get-Net然后 按  Ctrl + Space
PS > Get-Net6to4Configuration      #能够选择表示出来的命令行列表  
Get-Net6to4Configuration                     Get-NetIPAddress
Get-NetAdapter                               Get-NetIPConfiguration
・・・・・・・

PS > Get-ChildItem -    # 输入到这里,然后Ctrl + Space
PS > Get-ChildItem -Path   # 可以显示并选择候选选项。
Path                 Depth                File                 ErrorAction          OutVariable
LiteralPath          Force                Hidden               WarningAction        

[string[]] Path    # 进而,在最下方显示可选地指定的值等信息。

搜索 cmdlet


您可以使用Get-Command搜索 cmdlet 。如果在Get-Command参数中输入 cmdlet 名称,则会显示 cmdlet 名称。

PS> get-command Get-ChildItem

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Cmdlet          Get-ChildItem                                      3.1.0.0    Microsoft.PowerShell.Management

只看这个输出,我不知道有用的 cmdlet 是什么。(通配符)可以在Get-Command参数中指定。您可以通过指定 来搜索 cmdlet。

PS > get-command Get-C*dItem

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Cmdlet          Get-ChildItem                                      3.1.0.0    Microsoft.PowerShell.Management

Powershell cmdlet 具有 - 结构。 使用Get-Command ,您可以通过指定-Noun指定名词部分或通过指定-Verb指定动词部分进行搜索。在已发布的模块 cmdlet 中,通常将字符串添加到名词部分的开头以帮助识别模块。它的设计使您甚至可以按名称搜索 cmdlet。

# 搜索名字的时候
PS > Get-Command -Noun Item

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Cmdlet          Clear-Item                                         3.1.0.0    Microsoft.PowerShell.Management
Cmdlet          Copy-Item                                          3.1.0.0    Microsoft.PowerShell.Management
Cmdlet          Get-Item                                           3.1.0.0    Microsoft.PowerShell.Management
Cmdlet          Invoke-Item                                        3.1.0.0    Microsoft.PowerShell.Management
Cmdlet          Move-Item                                          3.1.0.0    Microsoft.PowerShell.Management
Cmdlet          New-Item                                           3.1.0.0    Microsoft.PowerShell.Management
Cmdlet          Remove-Item                                        3.1.0.0    Microsoft.PowerShell.Management
Cmdlet          Rename-Item                                        3.1.0.0    Microsoft.PowerShell.Management
Cmdlet          Set-Item                                           3.1.0.0    Microsoft.PowerShell.Management

# 同时锁定动词部分
PS > Get-Command -Noun Item -Verb Get

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Cmdlet          Get-Item                                           3.1.0.0    Microsoft.PowerShell.Management

通过使用-Module指定模块,您可以检查该模块提供的 cmdlet。这使您即使对于在线信息很少的模块也可以知道提供了哪些命令。

# 在安装了Selenium的模块之后,查找可以使用的命令列。
> Get-Command -Module Selenium

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Alias           Enter-SeUrl                                        3.0.1      Selenium
Alias           Find-SeElement                                     3.0.1      Selenium
Alias           Start-SeLegacyEdge                                 3.0.1      Selenium
Function        Clear-SeAlert                                      3.0.1      Selenium
Function        Get-SeCookie                                       3.0.1      Selenium
.......

查找 cmdlet 信息


有关 cmdlet 的信息可以使用Get-Help找到。或者,您可以通过向 cmdlet 添加-?参数来检查 cmdlet 信息。不过,它是英文的。

通过使用cmdlet 参数-Detailed和-Full,您可以指定要显示的信息的数量和内容。

PS C:\Users\Main> Get-help Get-ChildItem -Parameter * #显示所有参数的信息

-Attributes <System.Management.Automation.FlagsExpression`1[System.IO.FileAttributes]>
    {{Fill Attributes Description}}

    必須                         false
    位置                         named
    既定値                       None
   允许输入输油管   False
    允许通配符字符 false


-Depth <UInt32>
    {{Fill Depth Description}}
・
・
・

如果你会说英语,这将是一个非常有用的功能。如果您的主要语言是日语,老实说在互联网上查找会更快。如果参考使用示例,只看一眼就可以大概知道如何使用。

如果您不想在线搜索,可以使用Get-Help和-online参数从浏览器显示在线帮助。

当您使用Function编写 cmdlet时,您还可以嵌入基于注释的帮助。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小泉映月

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值