共用方式為


Show-Command

在圖形化命令視窗中建立 Windows PowerShell 命令。

Syntax

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

Description

Show-Command Cmdlet 可讓您在命令視窗中建立 Windows PowerShell 命令。 您可以使用命令視窗的功能來執行命令,或讓它向您傳回命令。

Show-Command 是非常有用的教學和學習工具。 Show-Command 適用於所有命令類型,包括 Cmdlet、函數、工作流程及 CIM 命令。

在沒有參數的情況下,Show-Command 會顯示列出所有已安裝模組中所有可用命令的命令視窗。 若要尋找模組中的命令,請從模組下拉式清單中選取模組。 若要選取命令,請按一下命令名稱。

若要使用命令視窗,請使用 [名稱] 或按下 [ 命令 ] 列表中的命令名稱,選取命令。 每個參數集都會顯示在個別的索引標籤上。星號表示必要參數。 若要輸入參數值,請在文字方塊中輸入值,或從下拉式清單方塊中選取值。 若要新增切換參數,請按一下參數核取方塊來加以選取。

當您準備好時,您可以按一下 Copy 來將您已經建立的命令複製到剪貼簿或按一下 Run 來執行命令。 您也可以使用 PassThru 參數將命令傳回主機程式,例如 Windows PowerShell 主控台。 若要取消命令選取範圍並返回顯示所有命令的檢視,請按 Ctrl 並按下選取的命令。

在 Windows PowerShell 整合式指令碼環境 (ISE) 中,預設會顯示一個稍微不同的 Show-Command 視窗。 如需使用此命令視窗的詳細資訊,請參閱 Windows PowerShell ISE 說明主題。

此 Cmdlet 是在 Windows PowerShell 3.0 中引進。

範例

範例 1:開啟 [命令] 視窗

PS C:\> Show-Command

此命令會顯示 Show-Command 視窗的預設檢視。 [命令] 視窗會顯示電腦上已安裝之所有模組中所有命令的清單。

範例 2:在 [命令] 視窗中開啟 Cmdlet

PS C:\> Show-Command -Name "Invoke-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 參數顯示錯誤命令視窗。

當您按一下 Run 時,Connect-PSSession 命令就會執行,如同您在命令列輸入 Connect-PSSession 命令一樣。

範例 4:指定 Cmdlet 的新預設參數值

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

此命令使用 $PSDefaultParameterValues 自動變數,為 Show-Command Cmdlet 的 HeightWidthErrorPopup 參數設定新的預設值。 現在當您執行 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 的命令視窗。 當您按一下 Run 按鈕時,Get-ChildItem 命令會執行並產生輸出。 管線運算子 (|) 會將 Get-ChildItem 命令的輸出傳送至 Out-GridView 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 視窗。 您可以使用視窗功能來設定參數值。 若要執行命令,請按一下 Show-Command 視窗中的 Run 按鈕。

參數

-ErrorPopup

指出 Cmdlet 除了在命令行上顯示錯誤之外,還會在彈出視窗中顯示錯誤。 根據預設,當在 Show-Command 視窗中執行的命令會產生錯誤時,只會在命令行顯示錯誤。

而且,當您執行命令時 (使用 Show-Command 視窗中的 Run 按鈕),ErrorPopup 參數會將命令結果傳回給目前的命令,而不是執行命令並將其輸出傳回給新命令。 您可以使用這項功能將命令結果儲存在變數中。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Height

指定 Show-Command 視窗的高度 (像素)。 輸入一個介於 300 和螢幕解析度像素數目之間的值。 如果值太大而無法在畫面上顯示命令視窗,Show-Command 會產生錯誤。 預設高度為 600 像素。 包含 Name 參數之 Show-Command 命令的預設高度為 300 像素。

Type:Double
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

顯示指定命令的命令視窗。 輸入一個命令的名稱,例如 Cmdlet、函數、工作流程或 CIM 命令的名稱。 如果您省略此參數,Show-Command 會顯示列出電腦上所有已安裝模組中之所有 Windows PowerShell 命令的命令視窗。

Type:String
Aliases:CommandName
Position:0
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-NoCommonParameter

指出這個 Cmdlet 會省略命令顯示的 [一般參數] 區段。 根據預設,一般參數會出現在命令視窗底部的可展開區段中。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PassThru

傳回代表您正在使用之項目的物件。 根據預設,此 Cmdlet 不會產生任何輸出。

若要執行命令字串,請將它複製並貼到在命令提示字元或將它儲存在變數中,然後使用 Invoke-Expression Cmdlet 來執行變數中的字串。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Width

指定 Show-Command 視窗的寬度 (像素)。 輸入一個介於 300 和螢幕解析度像素數目之間的值。 如果值太大而無法在畫面上顯示命令視窗,Show-Command 會產生錯誤。 預設寬度為 300 像素。

Type:Double
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

輸入

None

您無法使用管線將輸入傳送至 Show-Command

輸出

System.String, System.Object

使用 PassThru 參數時,Show-Command 會傳回命令字串。 使用 ErrorPopup 參數時,Show-Command 會傳回命令輸出 (任何物件)。否則Show-Command 不會產生任何輸出。

備註

  • Show-Command 無法在遠端會話中運作。