PowerShell 命令之别名VS全名


PowerShell 中的别名可以大量减少你敲键盘的次数,例如要通过Process信息收集两个2个小时前启动的进程(没有启动时间的不统计),将进程的名字以字符串数组的形式返回,要求进程名唯一。

gps | ? { ($_.StartTime -ne $null) -and ($_.StartTime.AddDays(1) -le [datetime]::Now) } |
Select  -ExpandProperty ProcessName |
gu

但是如果用全名:

Get-Process | 
Where-Object { ($_.StartTime -ne $null) -and ($_.StartTime.AddDays(1) -le [datetime]::Now) } | 
Select-Object  -ExpandProperty ProcessName |
Get-Unique

很明显第二段脚本多出了很多字符。

那是不是别名就优越于全名呢?没有绝对,只有场合之别。我个人更倾向于在控制台上敲命令使用别名可以提高效率,但是如果一旦准备写脚本最好用全名,原因如下:

PowerShell 的Power实际上来自于它的方便,它名副其实的结构:动词+名字=cmdlets,这样的组合一目了然,写脚本用全名,可以增强脚本的可读性和易维护性(尤其方便其他人阅读)。

本文链接: https://www.pstips.net/alias-vs-fullname-about-cmdlets.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!

关于 Mooser Lee

我是一个Powershell的爱好者,创建了PowerShell中文博客,热衷于Powershell技术的搜集和分享。本站部分内容来源于互联网,不足之处敬请谅解,并欢迎您批评指正。

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注