Windows PowerShell Get-Command Cmdlet 會擷取所有可用命令的名稱。在 Windows PowerShell 提示內輸入 Get-Command 後,您將看到類似以下的輸出內容:
PS> Get-Command CommandType Name Definition ----------- ---- ---------- Cmdlet Add-Content Add-Content [-Path] <String[... Cmdlet Add-History Add-History [[-InputObject] ... Cmdlet Add-Member Add-Member [-MemberType] <PS... ...
這份輸出看起來很像 Cmd.exe 的 Help 輸出:內部命令的表格摘要。在以上所摘錄的 Get-Command 命令輸出中,每個命令的 CommandType 都是 Cmdlet。Cmdlet 是 Windows PowerShell 內建命令類型,大致對應到 Cmd.exe 的 dir 和 cd 命令,以及 UNIX 殼層的內建程序如 BASH。
在 Get-Command 命令的輸出中,所有的定義都是以省略符號 (...) 結束,代表 PowerShell 無法在可用空間中顯示所有內容。當 Windows PowerShell 顯示輸出時,會先將輸出格式化為文字,然後進行排列以使資料整齊地放入視窗。稍後將會在格式器的相關章節內詳細說明。
Get-Command Cmdlet 提供 Syntax 參數,可讓您只擷取每個 Cmdlet 的語法。輸入 Get-Command -Syntax 命令就會顯示完整的輸出:
PS> Get-Command -Syntax Add-Content [-Path] <String[]> [-Value] <Object[]> [-PassThru] [-Filter <String>] [-Include <String[]>] [-Exclude <String[]>] [-Force] [Credential <PSCredential>] [-Verbose] [-Debug] [-ErrorAction <ActionPreference>] [-ErrorVariable <String>] [-OutVariable <String>] [-OutBuffer <Int32>] [-WhatIf] [-Confirm] [-Encoding <FileSystemCmdletProviderEncoding>] Add-History [[-InputObject] <PSObject[]>] [-Passthru] [-Verbose] [-Debug] [-ErrorAction <ActionPreference>] [-ErrorVariable <String>] [-OutVariable <String>][-OutBuffer <Int32>]...
顯示可用的命令類型
Get-Command 命令並未列出 Windows PowerShell 中每一個可用的命令。事實上,Get-Command 命令僅列出目前殼層中的 Cmdlet。Windows PowerShell 其實還支援其他幾種命令類型。別名、函數和指令碼也是 Windows PowerShell 命令,儘管《Windows PowerShell 使用手冊》並不打算詳加討論。外部可執行檔甚至已登錄的檔案類型處理常式亦歸類為命令。
輸入下列命令即可傳回所有可呼叫項目的清單:
PS> Get-Command *
由於這份清單中包含搜尋路徑上的外部檔案,列出的項目可能多達幾千個。更實際的做法是查看篩選過的命令集。若要找出其他類型的原生命令,請使用 Get-Command Cmdlet 的 CommandType 參數。雖然本文件至今尚未談到這些其他的命令類型,只要您知道特定命令類別的 CommandType 名稱就可以顯示該類型的命令。
附註: | |
事先附帶一提,星號 (*) 是供 Windows PowerShell 命令引數用於進行萬用字元比對。* 表示「比對一或多個任意字元」。輸入 Get-Command a* 即可找出以字母 "a" 開頭的所有命令。不同於 Cmd.exe 的萬用字元比對,Windows PowerShell 的萬用字元也會比對句號。 |
若要顯示特殊命令類別別名 (用於替代標準名稱的暱稱),請輸入下列命令:
PS> Get-Command -CommandType Alias
若要顯示所有的 Windows PowerShell 函數,請輸入下列命令:
PS> Get-Command -CommandType Function
若要顯示 Windows PowerShell 搜尋路徑上的外部指令碼,請輸入下列命令:
PS> Get-Command -CommandType ExternalScript