简短描述
在Windows PowerShell中, 别名就是cmdlets或其他命令的替代名称.
详细描述
别名就是cmdlet或者命令(例如: 函数, 脚本, 文件, 可执行文件. )的替代名称或者说是个昵称. 在使用命令的地方, 你都可以使用别名.
cmdlet 的名称由一个动词和一个名词组成,其功能对用户来讲一目了然。但是对于一个经常使用powershell命令的人每天敲那么多命令也很麻烦啊。能不能把命令缩短一点呢?于是“别名”就应运而生了。Powershell内部也实现了很多常用命令的别名。例如Get-ChildItem,列出当前的子文件或目录。它有两个别名:ls 和 dir,这两个别名来源于unix 的shell和windows的cmd。
因此别名有两个作用:
继承:继承unix-shell和windows-cmd。
方便:方便用户使用。
处理别名:
查询别名所指的真实cmdlet命令。
PS C:PS> Get-Alias -name ls CommandType Name Definition ----------- ---- ---------- Alias ls Get-ChildItem PS C:PS> Get-Alias -name dir CommandType Name Definition ----------- ---- ---------- Alias dir Get-ChildItem PS C:PS> Get-Alias -name fl CommandType Name Definition ----------- ---- ---------- Alias fl Format-List PS C:PS> Get-Alias -name ft CommandType Name Definition ----------- ---- ---------- Alias ft Format-Table
查看可用的别名
查看可用的别名,可以通过” ls alias:” 或者 ”Get-Alias“
如何查看所有以Remove打头的cmdlet的命令的别名呢?
PS C:PS> dir alias: | where {$_.Definition.Startswith("Remove")}
CommandType Name Definition
----------- ---- ----------
Alias del Remove-Item
Alias erase Remove-Item
Alias rbp Remove-PSBreakpoint
Alias rd Remove-Item
Alias rdr Remove-PSDrive
Alias ri Remove-Item
Alias rjb Remove-Job
Alias rm Remove-Item
Alias rmdir Remove-Item
Alias rmo Remove-Module
Alias rp Remove-ItemProperty
Alias rsn Remove-PSSession
Alias rsnp Remove-PSSnapin
Alias rv Remove-Variable
Alias rwmi Remove-WMIObject
说明:dir alias:获取的是别名的数组,通过where对数组元素进行遍历,$_代表当前元素,alias的Definition为String类型,因为powershell支持.net,.net中的string类有一个方法Startswith。通过where过滤集合在powershell中使用非常广泛。










