您的位置:首页 > 运维架构 > Shell

(5)Powershell别名(Alias)

2016-12-18 21:05 316 查看
在上一节,介绍了如何检索当前shell及Powershell中所有可用的命令,对于指定的命令会查看其语法信息,可以获取指定命令的帮助信息,包括获取在线帮助主题,详细内容时间戳这里

在本节中,主要介绍Powershell的别名,主要包含以下内容。

熟悉常见的别名。

标准别名的规范和创建新的别名。

Powershell中兼容性别名。

总结

熟悉常见的别名

别名,通俗点说就是另外一个名字,别名将所输入的命令和另外一个命令关联。举个例子,"咪咪"是"猫"的别名。通过使用别名,Powershell允许用户使用替代命令来引用命令。而且,别名使具有其它shell经验的用户在Powershell中重用这些命令来执行类似的操作。

例如:Powershell有一个名为Clear-Host的内部函数,用于清楚输出窗口。如果在命令提示符下输入 cls 或是 clear 命令,Powershell就会将此命令解释为 Clear-Host 函数的别名并允许 Clear-Host函数。

Powershell的别名功能非常有助于开发者了解Powershell,大多数的 cmd.exe 或是 UNIX 用户都有其按名称记忆的大量命令清单,他们在形式上的相似性足以使开发者无需先记住Powershell命令名称即可直接使用这些命令来完成工作。

下面是可以在Powershell中使用的通用的 Cmd.exe 和 UNIX 命令的简短列表。

cat
dir
mount
rm
cd
echo
move
rmdir
chdir
erase
popd
sleep
clear
h
ps
sort
cls
history
pushd
tee
copy
killpwd
type
del
lp
r
write
diff
ls
ren
如果经常使用这些命令之一,又想知道其在Powershell中的真实名称,可以通过 Get-Alias命令。
PS C:\Documents and Settings\Administrator> Get-Alias cls

CommandType     Name                                                Definition
-----------     ----                                                ----------
Alias           cls                                                 Clear-Host
关于别名应该注意,如果是处理其它来源的Powershell脚本或是代码段,或是希望定义自己的别名,尽早有关的别名信息十分重要。同时也应该在意识到,每个开发者都可以定义自己的别名,所以在团队协作编写脚本是,应该尽量避免使用别名。

标准别名的规范
上面提到的别名是为实现与其他shell命令名称的兼容性而设计的,但是Powershell内置的别名与其不同,通常是为了简短易用而设计的,这些简短的命令便于输入,但是如果不了解其含义,则无法正确解读它们。

通过提供一组基于常用动词和名词的速记名称的标准别名,PowerShell在清晰性与简短性之间取得平衡。在一组常用 cmdlet的核心别名中,只需知道速记名称即可解读这些命令。例如,在标准别名中,动词 Get 缩写为 g,动词 Set 缩写为 s,名词 Item 缩写为 i,名词 Location 缩写为 l,而名词 Command 缩写为 cm。 请参考以下表格中的例子。

PS(Powershell)命令PS(Powershell)别名
Get-Item
gi
Set-Item
si
Get-Location
gl
Set-Location
sl
Get-Command
gcm
创建新的别名

Powershell命令 Set-Alias cmdlet 可以创建别名,如可以创建以下别名。
Set-Alias -Name gi -Value Get-Item
Set-Alias -Name si -Value Set-Item
Set-Alias -Name gl -Value Get-Location
Set-Alias -Name sl -Value Set-Location
Set-Alias -Name gcm -Value Get-Command
在内部,Powershell启动时会使用此类命令。需要注意的是Powershell内置别名(上面5个别名就是内置别名)是只读的或是常事,意味着Powershell内置的别名使不可修改的。

Powershell中兼容性别名
Powershell有几个转换别名,允许 UNIX 和 Cmd 开发者在Powershell 中使用熟悉的命令名称。下表列出了最常用的别名以及别名背后的Powershell命令和标准的Powershell别名(如果存在的话)。如前文所述,可以使用 Get-Alias cmdlet 查找别名对应的Powershell命令,如 Get-Alias cls

CMD命令
UNIX命令PS(Powershell)命令PS(Powershell)别名
dirlsGet-ChildItem
gci
cls
clear
Clear-Host(函数)
不可用
del,erase,rmdir
rm
Remove-Item
ri
copy
cpCopy-Item
ci
move
mvMove-Item
mi
renamemv
Rename-Item
rni
type
cat
Get-Content
gc
cd
cdSet-Location
sl
md
mkdir
New-Item
ni
不可用pushd
Push-Location
不可用
不可用popd
Pop-Location
不可用
总结
通过学习本节内容,应掌握以下内容
Powershell中常见的别名及通过别名查看实际的Powershell命令。

Powershell的别名命名规范以及会新建自己的别名(Powershell内置的别名不可更改)。

知道Powershell中兼容性别名
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Alias Powershell别名