Get-Alias

获取当前会话的别名。

语法

Get-Alias
   [[-Name] <String[]>]
   [-Exclude <String[]>]
   [-Scope <String>]
   [<CommonParameters>]
Get-Alias
   [-Exclude <String[]>]
   [-Scope <String>]
   [-Definition <String[]>]
   [<CommonParameters>]

说明

Get-Alias cmdlet 获取当前会话中的别名。 这包括内置别名、已设置或导入的别名以及已添加到 PowerShell 配置文件的别名。

默认情况下, Get-Alias 采用别名并返回命令名称。 使用 Definition 参数时, Get-Alias 采用命令名称并返回其别名。

从 Windows PowerShell 3.0 开始,Get-Alias 以格式显示非连字符别名,<alias> -> <definition>以便更轻松地查找所需的信息。

示例

示例 1:获取当前会话中的所有别名

PS C:\> Get-Alias

CommandType     Name
-----------     ----
Alias           % -> ForEach-Object
Alias           ? -> Where-Object
Alias           ac -> Add-Content
Alias           asnp -> Add-PSSnapin
Alias           cat -> Get-Content
Alias           cd -> Set-Location
Alias           chdir -> Set-Location
Alias           clc -> Clear-Content
Alias           clear -> Clear-Host
Alias           clhy -> Clear-History
...

此命令获取当前会话中的所有别名。

输出显示<alias> -> <definition>Windows PowerShell 3.0 中引入的格式。 此格式仅适用于不含有连字符的别名,因为带有连字符的别名通常为 cmdlet 和函数(而不是昵称)的首选名称。

示例 2:按名称获取别名

Get-Alias -Name gp*, sp* -Exclude *ps

此命令获取以 gp 或 sp 开头的所有别名,但以 ps 结尾的别名除外。

示例 3:获取 cmdlet 的别名

Get-Alias -Definition Get-ChildItem

此命令获取 Get-childitem cmdlet 的别名。

默认情况下, Get-Alias cmdlet 会在知道别名时获取项名称。 定义参数在知道项名称时获取别名。

示例 4:按属性获取别名

Get-Alias | Where-Object {$_.Options -Match "ReadOnly"}

此命令获取选项属性的值为 ReadOnly 的所有别名。 此命令提供了一种快速方法来查找内置于 PowerShell 中的别名,因为它们具有 ReadOnly 选项。

选项只是 Get-Alias 获取的 AliasInfo 对象的一个属性。 若要查找 AliasInfo 对象的所有属性和方法,请键入 Get-Alias | get-member

示例 5:按名称获取别名,并按起始字母进行筛选

Get-Alias -Definition "*-PSSession" -Exclude e* -Scope Global

此示例获取所有以“-PSSession”结尾的命令别名,但以“e”开头的别名除外。

该命令使用 Scope 参数在全局范围内应用命令。 当你想要获取会话中的别名时,这对脚本比较有用。

参数

-Definition

获取指定项的别名。 输入 cmdlet、函数、脚本、文件或可执行文件的名称。

此参数称为 Definition,因为它在别名对象的 Definition 属性中搜索项名称。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Exclude

忽略指定项。 此参数的值对 Name 和 Definition 参数进行限定。 输入名称、定义或模式,例如“s*”。 允许使用通配符。

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Name

指定此 cmdlet 获取的别名。 允许使用通配符。 默认情况下, Get-Alias 检索为当前会话定义的所有别名。 参数名称 名称 是可选的。 还可以通过管道将别名传递给 Get-Alias

Type:String[]
Position:0
Default value:All aliases
Required:False
Accept pipeline input:True
Accept wildcard characters:True

-Scope

指定此 cmdlet 获取别名的范围。 此参数的可接受值为:

  • 全球
  • Local
  • 脚本
  • 一个相对于当前作用域的数字(0 到作用域数,其中 0 是指当前作用域,1 是指其父作用域)

默认值为 Local。 有关详细信息,请参阅 about_Scopes。

Type:String
Position:Named
Default value:Local
Required:False
Accept pipeline input:False
Accept wildcard characters:False

输入

String

可以通过管道将别名传递给 Get-Alias

输出

AliasInfo

Get-Alias 返回一个表示每个别名的对象。 Get-Alias 为每个别名返回相同的对象,但 PowerShell 使用基于箭头的格式显示非连字符别名的名称。

备注

  • 若要创建新的别名,请使用 Set-Alias 或 New-Alias。 若要删除别名,请使用 Remove-Item。
  • 基于箭头的别名名称格式不适用于含有连字符的别名。 这些很可能是 cmdlet 和函数(而不是典型的缩写或昵称)的首选替代名。