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:获取当前会话中的所有别名
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
...
此命令获取当前会话中的所有别名。
该输出显示了在 Windows PowerShell 3.0 中引入的 <alias> -> <definition>
格式。
此格式仅适用于不含有连字符的别名,因为带有连字符的别名通常为 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 可在你知道别名的情况下获取项名称。 Definition 参数可在你知道项名称的情况下获取别名。
示例 4:按属性获取别名
Get-Alias | Where-Object {$_.Options -Match "ReadOnly"}
此命令获取了所有 Options 属性值为 ReadOnly 的别名。 此命令提供了一种快速方法来查找内置于 PowerShell 中的别名,因为它们具有 ReadOnly 选项。
Options 只是 Get-Alias
所获取的 AliasInfo 对象的属性之一。 要查找 AliasInfo 对象的所有属性和方法,请键入 Get-Alias | get-member
。
示例 5:按名称获取别名,并按首字母进行筛选
Get-Alias -Definition "*-PSSession" -Exclude e* -Scope Global
此示例获取所有以“-PSSession”结尾的命令别名,但以“e”开头的别名除外。
该命令使用 Scope 参数将命令应用到全局范围。 当你想要获取会话中的别名时,这对脚本比较有用。
参数
-Definition
获取指定项的别名。 输入 cmdlet、函数、脚本、文件或可执行文件的名称。
此参数名为 Definition,因为它会在别名对象的 Definition 属性中搜索项名称。
类型: | String[] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | True |
-Exclude
忽略指定项。 此参数的值对 Name 和 Definition 参数进行限定。 输入名称、定义或模式,例如“s*”。 允许使用通配符。
类型: | String[] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | True |
-Name
指定此 cmdlet 获取的别名。 允许使用通配符。 默认情况下,Get-Alias
会检索为当前会话所定义的所有别名。 参数名 (Name) 为可选项。 还可以通过管道将别名名称传递给 Get-Alias
。
类型: | String[] |
Position: | 0 |
默认值: | All aliases |
必需: | False |
接受管道输入: | True |
接受通配符: | True |
-Scope
指定此 cmdlet 获取别名的范围。 此参数的可接受值为:
Global
Local
Script
- 一个相对于当前作用域的数字(0 到作用域数,其中 0 是指当前作用域,1 是指其父作用域)
Local
是默认值。 有关详细信息,请参阅 about_Scopes。
类型: | String |
Position: | Named |
默认值: | Local |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
输入
可以通过管道将包含某个别名的字符串传递给此 cmdlet。
输出
此 cmdlet 返回一个表示每个别名的对象。 它会为每个别名返回同一类型的对象,而 PowerShell 使用基于箭头的格式来显示没有连字符的别名名称。
备注
Windows PowerShell 包含 Get-Alias
的以下别名:
gal
要创建新的别名,请使用
Set-Alias
或New-Alias
。 要删除别名,请使用Remove-Item
。基于箭头的别名名称格式不适用于含有连字符的别名。 这些很可能是 cmdlet 和函数(而不是典型的缩写或昵称)的首选替代名。