Show-Command

在图形命令窗口中创建 Windows PowerShell 命令。

语法

Show-Command
    [[-Name] <String>]
    [-Height <Double>]
    [-Width <Double>]
    [-NoCommonParameter]
    [-ErrorPopup]
    [-PassThru]
    [<CommonParameters>]

说明

Show-Command cmdlet 允许在命令窗口中创建 Windows PowerShell 命令。 可以使用命令窗口的功能来运行命令或让命令返回给你。

Show-Command 是一种非常有用的教学和学习工具。 Show-Command 适用于所有命令类型,包括 cmdlet、函数、工作流和 CIM 命令。

如果没有参数,Show-Command 将显示一个命令窗口,其中列出了所有已安装模块中的所有可用命令。 若要在模块中找到命令,请从“模块”下拉列表中选择该模块。 若要选择命令,请单击命令名称。

若要使用命令窗口,请选择一个命令,方法是使用名称或在 命令 列表中单击命令名称。 每个参数集都显示在单独的选项卡上。星号指示必需参数。 若要输入参数的值,请在文本框中键入值,或从下拉框中选择值。 若要添加 switch 参数,请单击以选中参数复选框。

准备就绪后,可以单击 复制 将创建的命令复制到剪贴板,或单击 运行 运行命令。 还可以使用 PassThru 参数将命令返回到主机程序,例如 Windows PowerShell 控制台。 若要取消命令选择并返回到显示所有命令的视图,请按 Ctrl 并单击所选命令。

在 Windows PowerShell 集成脚本环境(ISE)中,默认情况下会显示 Show-Command 窗口的变体。 有关使用此命令窗口的信息,请参阅 Windows PowerShell ISE 帮助主题。

此 cmdlet 已在 Windows PowerShell 3.0 中引入。

示例

示例 1:打开“命令”窗口

PS C:\> Show-Command

此命令显示 显示命令 窗口的默认视图。 “命令”窗口显示计算机上安装的所有模块中的所有命令的列表。

示例 2:在“命令”窗口中打开 cmdlet

PS C:\> Show-Command -Name "Invoke-Command"

此命令将在 Show-Command 窗口中打开 Invoke-Command cmdlet 显示。 可以使用 Invoke-Command 显示来运行 Invoke-Command 命令。

示例 3:打开具有指定参数的 cmdlet

PS C:\> Show-Command -Name "Connect-PSSession" -Height 700 -Width 1000 -ErrorPopup

此命令为 Connect-PSSession cmdlet 打开 Show-Command 窗口。 它使用 HeightWidth 参数来指定命令窗口的维度和 ErrorPopup 参数以显示错误命令窗口。

单击 运行时,Connect-PSSession 命令运行,就像在命令行中键入 Connect-PSSession 命令一样。

示例 4:为 cmdlet 指定新的默认参数值

PS C:\> $PSDefaultParameterValues = @{"Show-Command:Height" = 700; "Show-Command:Width" = 1000; "Show-Command:ErrorPopup" = $True}

此命令使用 $PSDefaultParameterValues 自动变量为 HeightWidthErrorPopup 参数设置 Show-Command cmdlet 的新默认值。 现在,运行 Show-Command 命令时,会自动应用新的默认值。

若要在每个 Windows PowerShell 会话中使用这些默认值,请将$PSDefaultParameterValues变量添加到 Windows PowerShell 配置文件。 有关详细信息,请参阅about_Profiles和 about_Parameters_Default_Values

示例 5:将输出发送到网格视图

PS C:\> Show-Command Get-ChildItem | Out-GridView

此命令演示如何结合使用 Show-Command 和 Out-GridView cmdlet。

该命令使用 Show-Command cmdlet 打开 Get-ChildItem cmdlet 的命令窗口。 单击 运行 按钮时,Get-ChildItem 命令运行并生成输出。 管道运算符 (|) 将 Get-ChildItem 命令的输出发送到 Out-GridView cmdlet,该 cmdlet 在交互式窗口中显示 Get-ChildItem 输出。

示例 6:显示在“命令”窗口中创建的命令

PS C:\> Show-Command -PassThru
Get-EventLog -LogName "Windows PowerShell" -Newest 5

此命令显示在 Show-Command 窗口中创建的命令。 该命令使用 PassThru 参数,该参数返回字符串中 Show-Command 结果。

例如,如果使用 Show-Command 窗口创建一个 Get-EventLog 命令,该命令获取 Windows PowerShell 事件日志中最新的五个事件,然后单击“确定”,该命令将返回以下输出。

查看命令字符串可帮助你了解 Windows PowerShell。

示例 7:将命令保存到变量

PS C:\> $C = Show-Command -PassThru

This command displays the command string in the $C variable.
PS C:\> $C
Get-EventLog -LogName "Windows PowerShell" -Newest 5

These commands use the Invoke-Expression cmdlet to run the string in the $C variable. The first command uses the full cmdlet name. The second command uses the "iex" alias for the **Invoke-Expression** cmdlet. These commands are equivalent and you can use them interchangeably.The output shows the five newest events in the Windows PowerShell event log.
PS C:\> Invoke-Expression $C

PS C:\> iex $C
   Index Time          EntryType   Source                 InstanceID Message
   ----- ----          ---------   ------                 ---------- -------
   11520 Dec 16 16:37  Information PowerShell                    400 Engine state is changed from None to Available....
   11519 Dec 16 16:37  Information PowerShell                    600 Provider "Variable" is Started. ...
   11518 Dec 16 16:37  Information PowerShell                    600 Provider "Registry" is Started. ...
   11517 Dec 16 16:37  Information PowerShell                    600 Provider "Function" is Started. ...
   11516 Dec 16 16:37  Information PowerShell                    600 Provider "FileSystem" is Started. ...

此命令演示如何运行使用 Show-Command cmdlet 的 PassThru 参数时获取的命令字符串。 使用此策略可以查看命令并使用它。

第一个命令使用 Show-Command cmdlet 的 PassThru 参数。 它将命令的结果保存在$C变量中。

该命令将打开 Show-Command 窗口。 在本例中,我们使用 Show-Command 窗口创建一个 Get-EventLog 命令,该命令获取 Windows PowerShell 事件日志中的五个最新事件。 单击“确定”时,Show-Command 返回命令字符串,该字符串保存在$C变量中。

示例 8:将命令的输出保存到变量

PS C:\> $P = Show-Command Get-Process -ErrorPopup

The second command displays the value in the $P variable.
PS C:\> $P
Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName

-------  ------    -----      ----- -----   ------     -- -----------

    473      33    94096     112532   709     2.06   4492 powershell

这些命令使用 Show-Command cmdlet 的 ErrorPopup 参数将命令的输出保存在变量中。

第一个命令使用 ErrorPopup 参数运行 Show-Command cmdlet。 除了在窗口中显示错误之外,ErrorPopup 将命令输出返回到当前命令,而不是创建新命令。

运行此命令时,将打开 Show-Command 窗口。 可以使用窗口功能设置参数值。 若要运行该命令,请单击 显示命令 窗口中的“运行”按钮。

参数

-ErrorPopup

指示该 cmdlet 除了在命令行中显示错误外,还会在弹出窗口中显示错误。 默认情况下,当在 Show-Command 窗口中运行的命令生成错误时,该错误仅在命令行上显示。

此外,运行命令(通过使用 Show-Command 窗口中的“运行”按钮),ErrorPopup 参数将命令结果返回到当前命令,而不是运行命令并将其输出返回到新命令。 可以使用此功能将命令结果保存在变量中。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Height

指定 Show-Command 窗口的高度(以像素为单位)。 输入介于 300 和屏幕分辨率中的像素数之间的值。 如果值太大而无法在屏幕上显示命令窗口,Show-Command 将生成错误。 默认高度为 600 像素。 对于包含 Name 参数的 Show-Command 命令,默认高度为 300 像素。

类型:Double
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Name

显示指定命令的命令窗口。 输入一个命令的名称,例如 cmdlet、函数、工作流或 CIM 命令的名称。 如果省略此参数,Show-Command 将显示一个命令窗口,其中列出了计算机上安装的所有模块中的所有 Windows PowerShell 命令。

类型:String
别名:CommandName
Position:0
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-NoCommonParameter

指示此 cmdlet 省略命令显示的 Common Parameters 节。 默认情况下,通用参数显示在命令窗口底部的可展开部分。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-PassThru

返回一个对象,该对象表示正在使用的项。 默认情况下,此 cmdlet 不生成任何输出。

若要运行命令字符串,请在命令提示符处复制并粘贴它,或将其保存在变量中,并使用 Invoke-Expression cmdlet 在变量中运行字符串。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Width

指定 Show-Command 窗口的宽度(以像素为单位)。 输入介于 300 和屏幕分辨率中的像素数之间的值。 如果值太大而无法在屏幕上显示命令窗口,Show-Command 将生成错误。 默认宽度为 300 像素。

类型:Double
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

输入

None

不能通过管道将输入传递给 Show-Command

输出

System.String, System.Object

使用 PassThru 参数时,Show-Command 返回命令字符串。 使用 ErrorPopup 参数时,Show-Command 返回命令输出(任何对象)。否则,Show-Command 不会生成任何输出。

备注

  • Show-Command 在远程会话中不起作用。