關於別名
簡短描述
描述如何在PowerShell中使用 Cmdlet 和命令的替代名稱。
詳細描述
別名是 Cmdlet 或命令專案的替代名稱或暱稱,例如函式、腳本、檔案或可執行檔。 您可以在任何 PowerShell 命令中使用別名,而不是命令名稱。
若要建立別名,請使用 New-Alias Cmdlet。 例如,下列命令會建立 Cmdlet 的 Get-AuthenticodeSignature
「gas」 別名:
New-Alias -Name gas -Value Get-AuthenticodeSignature
建立 Cmdlet 名稱的別名之後,您可以使用 別名,而不是 Cmdlet 名稱。 例如,若要取得 SqlScript.ps1 檔案的 Authenticode 簽章,請輸入:
Get-AuthenticodeSignature SqlScript.ps1
或者,輸入:
gas SqlScript.ps1
如果您建立 “word” 做為 Microsoft Office Word 的別名,您可以輸入 “word”,而不是下列專案:
"C:\Program Files\Microsoft Office\Office11\Winword.exe"
內建別名
PowerShell 包含一組內建別名,包括 Set-Location Cmdlet 的 “cd” 和 “chdir”,以及 Get-ChildItem Cmdlet 的 “ls” 和 “dir”。
若要取得計算機上的所有別名,包括內建別名,請輸入:
Get-Alias
別名 CMDLET
PowerShell 包含下列 Cmdlet,專為使用別名而設計:
Get-Alias
- 取得目前會話中的所有別名。New-Alias
- 建立新的別名。Set-Alias
- 建立或變更別名。Export-Alias
- 將一或多個別名匯出至檔案。Import-Alias
- 將別名檔案匯入 PowerShell。
如需 Cmdlet 的詳細資訊,請輸入:
Get-Help <cmdlet-Name> -Detailed
例如,輸入:
Get-Help Export-Alias -Detailed
建立別名
若要建立新的別名,請使用 New-Alias Cmdlet。 例如,若要建立 Get-Help 的 “gh” 別名,請輸入:
New-Alias -Name gh -Value Get-Help
您可以使用命令中的別名,就像使用完整的 Cmdlet 名稱一樣,也可以搭配參數使用別名。
例如,若要取得 Get-WmiObject Cmdlet 的詳細說明,請輸入:
Get-Help Get-WmiObject -Detailed
或者,輸入:
gh Get-WmiObject -Detailed
儲存別名
您建立的別名只會儲存在目前的工作階段中。 若要在不同的會話中使用別名,請將別名新增至您的PowerShell配置檔。 或者,使用 Export-Alias Cmdlet 將別名儲存至檔案。
如需詳細資訊,請鍵入:
Get-Help about_Profiles
取得別名
若要取得目前會話中的所有別名,包括內建別名、PowerShell 配置檔中的別名,以及您在目前會話中建立的別名,請輸入:
Get-Alias
若要取得特定別名,請使用 Get-Alias Cmdlet 的 Name 參數。 例如,若要取得開頭為 「p」 的別名,請輸入:
Get-Alias -Name p*
若要取得特定項目的別名,請使用Definition參數。 例如,若要取得 Get-ChildItem Cmdlet 類型的別名:
Get-Alias -Definition Get-ChildItem
GET-ALIAS 輸出
Get-Alias 只會傳回一種物件類型,而 AliasInfo 物件 (System.Management.Automation.AliasInfo) 。 不包含連字元的別名名稱,例如 「cd」 會以下列格式顯示:
Get-Alias ac
CommandType Name Version Source
----------- ---- ------- ------
Alias ac -> Add-Content
這可讓您快速且輕鬆地取得所需的資訊。
箭號型別名名稱格式不會用於含連字號的別名。 這些可能是 Cmdlet 和函式的慣用替代名稱,而不是一般的縮寫或暱稱,而且作者可能不希望它們明顯。
參數為命令的替代名稱
您可以將別名指派給 Cmdlet、腳稿、函式或可執行檔。 您無法將別名指派給命令及其參數。 例如,您可以將別名指派給 Get-Eventlog
Cmdlet,但無法將別名指派給 Get-Eventlog -LogName System
命令。
您可以建立包含 命令的函式。 若要建立函式,請輸入 「function」 這個字,後面接著函式的名稱。 輸入 命令,並以大括弧括住 ({}) 。
例如,下列命令會建立 syslog 函式。 此函式代表 Get-Eventlog -LogName System
命令:
function Get-SystemEventlog {Get-Eventlog -LogName System}
Set-Alias -Name syslog -Value Get-SystemEventlog
您現在可以輸入 「syslog」 ,而不是 命令。 而且,您可以建立新函式的別名。
如需函式的詳細資訊,請輸入:
Get-Help about_Functions
ALIAS 物件
PowerShell 別名是由 System.Management.Automation.AliasInfo 類別實例的物件表示。 如需此類型對象的詳細資訊,請參閱 PowerShell SDK 中的 AliasInfo 類別 。
若要檢視別名對象的屬性和方法,請取得別名。 然後,使用管線將它們傳送至 Get-Member Cmdlet。 例如:
Get-Alias | Get-Member
若要檢視特定別名的屬性值,例如 dir
別名,請取得別名。 然後,使用管線將它傳送至 Format-List Cmdlet。 例如,下列命令會取得 「dir」 別名。 接下來,命令會將別名傳送至 Format-List Cmdlet。 然後,此命令會使用 Format-List 的 Property 參數與通配符 (*) 來顯示別名的所有屬性 dir
。 下列命令會執行下列工作:
Get-Alias -Name dir | Format-List -Property *
PowerShell 別名提供者
PowerShell 包含別名提供者。 別名提供者可讓您檢視 PowerShell 中的別名,就像它們位於文件系統磁碟驅動器上一樣。
別名提供者會公開 Alias: 磁碟驅動器。 若要進入別名:磁碟驅動器,請輸入:
Set-Location Alias:
若要檢視磁碟驅動器的內容,請輸入:
Get-ChildItem
若要從另一個 PowerShell 磁碟驅動器檢視磁碟驅動器的內容,請以磁碟驅動器名稱開始路徑。 包含冒號 (:) 。 例如:
Get-ChildItem -Path Alias:
若要取得特定別名的相關信息,請輸入磁碟驅動器名稱和別名名稱。 或者,輸入名稱模式。 例如,若要取得以 「p」 開頭的所有別名,請輸入:
Get-ChildItem -Path Alias:p*
如需 PowerShell 別名提供者的詳細資訊,請輸入:
Get-Help Alias