如下说明是翻译
PowerShell
中
: help Get-Alias
产生的帮助信息
.
译者
: Edengundam(
马涛
)
Get-Alias
大纲
取得当前会话的别名
.
语法
Get-Alias [[-name] <string[]>] [-scope <string>] [-exclude <string[]>] [<CommonParameters>]
详细描述
Get-Alias cmdlet
取得当前会话中为
cmdlet,
函数和可执行文件创建的可选别名
.
此集合包括了内建别名
,
你所设置或导入的别名
,
你添加到
Windows PowerShell
配置文件
(profile)
的别名
.
如果你指定了一个或多个别名
, Get-Alias
取得别名对象
,
并显示它的属性
,
显示的属性包括
:
别名表示的对象
(
例如
cmdlet
的全名
). Windows PowerShell
别名提供程序提供此功能
.
参数
-name <string[]>
指定要检索的别名
.
默认情况下
, Get-Alias
检索当前会话中定义的全部别名定义
.
参数名称
("-Name")
为可选项
.
强制参数
?
|
false
|
参数位置
?
|
1
|
默认值
|
*
|
允许从管道绑定输入
?
|
true (
根据值
,
根据属性名
)
|
允许通配符扩展
?
|
true
|
-scope <string>
指定了别名的有效作用域
.
有效值包括
: "global", "local"
或
"script",
也可以是一个相对当前作用于的值
(
此值范围是从
0
到当前活动的作用域数量
. 0
代表当前作用域
, 1
代表父作用域
). "Local"
为默认值
,
更多信息
,
键入
"get-help about_scope".
强制参数
?
|
false
|
参数位置
?
|
named
|
默认值
|
All locally visible aliases
|
允许从管道绑定输入
?
|
false
|
允许通配符扩展
?
|
false
|
-exclude <string[]>
忽略指定的项
.
此参数的值用于限定参数
Name.
输入一个路径元素或者模式
,
例如
: "s*".
允许使用通配符
.
强制参数
?
|
false
|
参数位置
?
|
named
|
默认值
|
|
允许从管道绑定输入
?
|
false
|
允许通配符扩展
?
|
true
|
<
公共参数
>
此命令支持公共参数
: -Verbose, -Debug, -ErrorAction, -ErrorVariable, and -OutVariable.
更多信息
,
输入
, "get-help about_commonparameters".
输入类型
None
返回类型
aliasInfoObject
注意
更多信息
,
输入
"Get-Help Get-Alias -detailed".
需要技术信息
,
输入
"Get-Help Get-Alias -full".
别名就是
cmdlet
或命令的别名
,
昵称
.
要运行
cmdlet
,
你可以使用它的全名或任意合法的别名
.
更多信息
,
输入
"get-help about_alias".
如果需要为该命令提供多个参数
,
请使用逗号进行分隔
.
例如
, "<parameter-name> <value1>, <value2>".
你还可以使用
Get-Alias
的内建别名
"gal"
来引用
Get-Alias.
要创建新的别名
,
使用
Set-Alias
或
New-Alias
.
删除一个别名
,
使用
Remove-Item
.
例
1
C:/PS>get-alias
此命令检索当前会话中的所有别名
.
默认显示包括
:
命令类型
(
这里总显示
"Alias",
别名
),
别名的名称
(Name
列
)
和别名指向的
cmdlet ("Definition"
列
).
例
2
C:/PS>get-alias -name g*, s*
此命令取得所有以
"g"
或
"s"
开头的别名
.
例
3
C:/PS>get-alias | where-object {$_.Definition -match "Get-Childitem"}
最简单的情况下
, Get-Alias cmdlet
取得那些你清楚的别名对应的
cmdlet
名称
.
然而
,
你还可以使用此命令根据你知道的
cmdlet
名称查找别名
.
别名对象的
Definition
属性中存储了别名对应的
cmdlet
名称
.
所以
,
对于给定的
cmdlet
查找对应的别名
,
你只需要检索别名的
Definition
属性是否匹配指定
cmdlet
名称
.
首先
,
命令取得所有的别名
("get-alias"),
接下来将它通过管道将结果发送给
Where-Object
cmdlet.
元素
"{$_.definition -match "get-childitem"}"
告诉
Where-Object
只取得属性
Definition
的值是
"Get-Childitem"
的别名
.
结果是包含所有
Get-ChildItem cmdlet
对应的别名列表
.
Definition
只是
Get-Alias
取得的
AliasInfo
对象的一个属性
.
要查看
AliasInfo
对象的所有属性和方法
,
键入
: "get-alias | get-member".
例
4
C:/PS>get-alias | where-object {$_.Options -match "ReadOnly"}
此命令检索所有属性
Options
的值为
ReadOnly
的别名
.
此命令提供了一个便捷的方法找到
Windows PowerShell
的内建别名
,
这是因为内建别名具有
ReadOnly
的选项
.
首先
,
命令取得所有的别名
("get-alias"),
接下来它将结果通过管道发送给
Where-Object
cmdlet.
元素
"{$_.Options -match "ReadOnly"}"
告诉
Where-Object
只取得
Options
属性值是
"ReadOnly"
的别名
.
Options
只是只是
Get-Alias
取得的
AliasInfo
对象的一个属性
.
要查看
AliasInfo
对象的所有属性和方法
,
键入
: "get-alias | get-member".
例
5
C:/PS>(get-alias | where-object {$_.Options -match "ReadOnly"}).count
此命令显示具有
ReadOnly
选项的别名数量
.
它将你从单调乏味的计数中解脱出来
,
使你能够比较不同属性集合中的对象
.
此命令除了将前一个例子中的命令封装到括号中
,
并追加了
".count"
属性外
,
与前一个例子完全一致
.
Windows PowerShell
首先执行括号中的命令
.
接下来
,
并没有直接的显示结果
,
而是对结果进行计数
,
并将显示计数结果
.
要对命令产生的对象进行计数
,
直接将命令放入括号中
,
追加
".count."
即可
.
例
6
C:/PS>get-alias | out-string -stream | select-string "Get-Command"
此命令显示包含短语
"Get-Command"
的别名
.
与之前的命令不同的是此命令在别名中的所有属性中查找此短语
.
它也揭示了操作对象和操作字符串之间的区别
.
此命令使用
Get-Alias cmdlet
取得
AliasInfo
对象
; shell
中每个别名对应一个对象
.
管道运算符
(|)
将输出发送给
Out-String
,
后者将每个对象转换为一系列字符串
.
此命令使用参数
Stream
来使得每个对象单独发送一个字符串
,
而不是将所有对象转换为一个字符串
.
另一个管道运算符将字符串发送给
Select-String
,
后者将把包含
"Get-Command"
的字符串选出来
.
如果你忽略参数
Stream,
此命令将会显示所有的别名
,
这是因为
Select-String
将会在
Out-String
返回的唯一字符串中查找
"Get-Command",
格式器将把整个字符串当作表来显示
.
更多关于
Out-String
的信息
,
键入
"Get-Help Out-String -detailed".
相关链接
Set-Alias
New-Alias
Export-Alias
Import-Alias