Show-Command
在图形窗口中显示 PowerShell 命令信息。
语法
Show-Command
[[-Name] <String>]
[-Height <Double>]
[-Width <Double>]
[-NoCommonParameter]
[-ErrorPopup]
[-PassThru]
[<CommonParameters>]
说明
Show-Command
cmdlet 允许在命令窗口中创建 PowerShell 命令。 你可以使用命令窗口的功能运行命令或使其向你返回命令。
Show-Command
是非常有用的教学工具。 Show-Command
对所有命令类型有效,包括 cmdlet、函数、工作流和 CIM 命令。
不使用参数时,Show-Command
将显示一个命令窗口,此窗口中将列出已安装模块中的所有可用命令。 若要查找某个模块中的命令,请从“模块”下拉列表中选择该模块。 若要选择命令,请单击命令名称。
若要使用命令窗口,请通过使用 Name 或单击Commands 列表中的命令名称选择命令。 将在单独的选项卡上显示每个参数集。星号表示强制参数。 若要输入某个参数的值,请在文本框中键入该值或从下拉框中选择值。 若要添加开关参数,请单击以选中参数复选框。
准备就绪后,可单击“复制”,将你创建的命令复制到剪贴板,或单击“运行”运行该命令。 还可使用 PassThru 参数将该命令返回到主机程序中,例如 PowerShell 控制台。 若要取消命令选择并返回到显示所有命令的视图,请按 Ctrl 并单击所选的命令。
在 PowerShell 集成脚本环境 (ISE) 中,默认显示 Show-Command
窗口的变体。 有关如何使用此命令窗口的信息,请参阅 PowerShell ISE 帮助主题。
此 cmdlet 是在 PowerShell 3.0 中引入的。
因为此 cmdlet 需要用户界面,所以它无法在 Windows Server Core 或 Windows Nano Server 上运行。 此 cmdlet 仅在支持 Windows 桌面的 Windows 系统上可用。
示例
示例 1:打开命令窗口
此示例显示 Show-Command
窗口的默认视图。 “命令”窗口显示安装在计算机上的所有模块中的所有命令列表。
Show-Command
示例 2:在命令窗口中打开 cmdlet
此示例在“命令”窗口中显示了 Invoke-Command
cmdlet。 可以使用此显示来运行 Invoke-Command
命令。
Show-Command -Name "Invoke-Command"
示例 3:打开具有指定参数的 cmdlet
此命令将打开 Show-Command
cmdlet 的 Connect-PSSession
窗口。
Show-Command -Name "Connect-PSSession" -Height 700 -Width 1000 -ErrorPopup
Height 和 Width 参数指定命令窗口的尺寸。 ErrorPopup 参数显示错误命令窗口。
单击“运行”时,Connect-PSSession
命令将运行,就像在命令行上键入 Connect-PSSession
命令一样。
示例 4:为 cmdlet 指定新的默认参数值
此示例使用 $PSDefaultParameterValues
自动变量设置 Show-Command
cmdlet 的 Height、Width 和 ErrorPopup 参数的新默认值。
$PSDefaultParameterValues = @{
"Show-Command:Height" = 700
"Show-Command:Width" = 1000
"Show-Command:ErrorPopup" = $True
}
现在,运行 Show-Command
命令时,将自动应用新默认值。 若要使用每个 PowerShell 会话中的这些默认值,请将 $PSDefaultParameterValues
变量添加到 PowerShell 配置文件。 有关详细信息,请参阅 about_Profiles 和 about_Parameters_Default_Values。
示例 5:将输出发送到网格视图
此命令显示如何同时使用 Show-Command
和 Out-GridView
cmdlet。
Show-Command Get-ChildItem | Out-GridView
此命令使用 Show-Command
cmdlet 打开以下 Get-ChildItem
cmdlet 的命令窗口。
单击“运行”按钮时,Get-ChildItem
命令将运行并生成输出。 管道运算符 (|) 将 Get-ChildItem
命令的输出发送到 Out-GridView
cmdlet,此 cmdlet 将在交互式窗口中显示 Get-ChildItem
输出。
示例 6:显示在命令窗口中创建的命令
此示例在 Show-Command
窗口中显示你创建的命令。 此命令使用 PassThru 参数,以字符串形式返回 Show-Command
结果。
Show-Command -PassThru
Get-EventLog -LogName "Windows PowerShell" -Newest 5
例如,如果使用 Show-Command
窗口创建 Get-EventLog
命令(可获取 Windows PowerShell 事件日志中 5 个最新事件),然后单击“确定”,则该命令返回以上输出。 查看命令字符串可帮助你了解 PowerShell。
示例 7:将命令保存到变量
此示例展示了如何运行在使用 Show-Command
cmdlet 的 PassThru 参数时所获取的命令字符串。 此策略使你可以查看该命令并使用它。
$C = Show-Command -PassThru
$C
Invoke-Expression $C
Get-EventLog -LogName "PowerShell" -Newest 5
Index Time EntryType Source InstanceID Message
----- ---- --------- ------ ---------- -------
11520 Dec 16 16:37 Information Windows PowerShell 400 Engine state is changed from None to Available...
11519 Dec 16 16:37 Information Windows PowerShell 600 Provider "Variable" is Started. ...
11518 Dec 16 16:37 Information Windows PowerShell 600 Provider "Registry" is Started. ...
11517 Dec 16 16:37 Information Windows PowerShell 600 Provider "Function" is Started. ...
11516 Dec 16 16:37 Information Windows PowerShell 600 Provider "FileSystem" is Started. ...
第一个命令使用 Show-Command
cmdlet 的 PassThru 参数,并将命令的结果保存在 $C
变量中。 在本例中,我们使用 Show-Command
窗口创建 Get-EventLog
命令(用于获取 Windows PowerShell 事件日志中 5 个最新事件)。 单击“确定”时,Show-Command
将返回命令字符串,此字符串保存在 $C
变量中。
示例 8:将命令输出保存到变量
此示例使用 ErrorPopup 参数将命令的输出保存在变量中。
$P = Show-Command Get-Process -ErrorPopup
$P
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName
------- ------ ----- ----- ----- ------ -- -----------
473 33 94096 112532 709 2.06 4492 powershell
除了在窗口中显示错误以外,ErrorPopup 还会将命令输出返回到当前命令,而不是创建新命令。 运行此命令时,Show-Command
窗口将打开。 你可以使用窗口功能来设置参数值。 若要运行此命令,请单击 Show-Command
窗口中的“运行”按钮。
参数
-ErrorPopup
指示除了在命令行中显示错误以外,该 cmdlet 还在弹出窗口中显示错误。 默认情况下,在 Show-Command
窗口中运行的命令生成错误时,该错误将仅显示在命令行中。
此外,运行该命令时(通过使用 Show-Command
窗口中的“运行”按钮),ErrorPopup 参数会将命令结果返回到当前命令,而不是运行该命令并将其输出返回到新的命令。 你可以使用此功能将命令结果保存在变量中。
类型: | SwitchParameter |
Position: | Named |
默认值: | False |
必需: | 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
将显示一个命令窗口,此窗口中将列出计算机上安装的所有模块中的 PowerShell 命令。
类型: | String |
别名: | CommandName |
Position: | 0 |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-NoCommonParameter
指示此 cmdlet 省略命令显示的“通用参数”部分。 默认情况下,“通用参数”显示在命令窗口底部的可展开部分中。
类型: | SwitchParameter |
Position: | Named |
默认值: | False |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-PassThru
返回一个代表你所处理的项目的对象。 默认情况下,此 cmdlet 将不产生任何输出。 若要运行命令字符串,请将其复制并粘贴到命令提示符中,或将其保存在变量中并使用 Invoke-Expression
cmdlet 运行变量中的字符串。
类型: | SwitchParameter |
Position: | Named |
默认值: | False |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Width
指定 Show-Command
窗口的宽度(以像素为单位)。 输入一个介于 300 和屏幕分辨率中的像素数之间的值。 如果该值太大而无法在屏幕上显示命令窗口,则 Show-Command
将生成一个错误。 默认宽度为 300 像素。
类型: | Double |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
输入
None
不能通过管道将对象传递给此 cmdlet。
输出
None
默认情况下,此 cmdlet 不返回任何输出。
使用 PassThru 参数时,此 cmdlet 返回一个命令字符串。
使用 ErrorPopup 参数时,此 cmdlet 返回命令输出(任何对象)。
备注
Windows PowerShell 包含 Show-Command
的以下别名:
shcm
Show-Command
在远程会话中不起作用。