關於別名

簡短描述

介紹如何在PowerShell中對 cmdlet 和命令使用備用名稱。

完整描述

別名是 Cmdlet 或命令元素的替代名稱或暱稱,例如函式、腳本、檔案或可執行檔。 您可以在任何 PowerShell 命令中使用別名,而不是命令名稱。

若要建立別名,請使用 New-Alias Cmdlet。 例如,下列命令會為 gas Cmdlet 建立 Get-AuthenticodeSignature 別名:

New-Alias -Name gas -Value Get-AuthenticodeSignature

建立 cmdlet 名稱的別名之後,您可以使用該別名來替代 cmdlet 名稱。 例如,要取得 Authenticode 檔案的簽名 SqlScript.ps1 ,請鍵入:

Get-AuthenticodeSignature SqlScript.ps1

或者,鍵入:

gas SqlScript.ps1

如果您將 word 建立為 Microsoft Office Word 的別名,您可以輸入「word」而不是輸入以下文字串:

"C:\Program Files\Microsoft Office\Office11\Winword.exe"

內置別名

PowerShell 包括一組內置別名,包括 cmdlet lsdir 的 Set-Location 和 ,以及 cd Windows 以及 dir cmdlet 的 Linux chdir 和 macOS Get-ChildItem 的別名。

要獲取電腦上的所有別名(包括內置別名),請鍵入:

Get-Alias

Alias Cmdlet

PowerShell 包括以下 cmdlet,這些 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。 例如,若要為 gh建立 Get-Help 別名,請輸入:

New-Alias -Name gh -Value Get-Help

您可以使用命令中的別名,就像使用完整的 Cmdlet 名稱一樣,而且您可以使用別名搭配參數。

例如,若要獲取 cmdlet 的詳細 Get-CimInstance 説明,請鍵入:

Get-Help Get-CimInstance -Detailed

或者,鍵入:

gh Get-CimInstance -Detailed

保存別名

您建立的別名僅儲存在目前的工作階段中。 若要在不同的會話中使用別名,請將別名新增至您的PowerShell配置檔。 或者,使用 Export-Alias cmdlet 將別名保存到檔中。

有關更多資訊,請鍵入:

Get-Help about_Profiles

獲取別名

要獲取當前會話中的所有別名,包括內置別名、PowerShell 配置檔中的別名以及您在當前會話中創建的別名,請鍵入:

Get-Alias

若要獲取特定別名,請使用 cmdlet 的 Get-Alias Name 參數。 例如,要獲取以 「p」 開頭的別名,請鍵入:

Get-Alias -Name p*

要獲取特定項目的別名,請使用Definition參數。 例如,要獲取 cmdlet 類型的別名 Get-ChildItem ,請執行以下作:

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 Alias 提供程式

PowerShell 包括 Alias 提供程式。 提供程式 Alias 允許您在PowerShell中查看別名,就像它們在文件系統驅動器上一樣。

Alias提供程式公開 Alias: 驅動器。 要進入 Alias: 驅動器, 請鍵入:

Set-Location Alias:

要檢視驅動器的內容,請鍵入:

Get-ChildItem

若要查看來自另一個 PowerShell 驅動器的驅動器的內容,請在路徑中以驅動器名稱開頭。 包括冒號 (:)。 例如:

Get-ChildItem -Path Alias:

若要取得特定別名的相關信息,請輸入磁碟驅動器名稱和別名名稱。 或者,鍵入名稱模式。 例如,要獲取所有以 「p」 開頭的別名,請鍵入:

Get-ChildItem -Path Alias:p*

有關 PowerShell Alias 提供程式的更多資訊,請鍵入:

Get-Help Alias

另請參閱