我想设置一个别名来列出目录中的文件,但Set-Alias -name lf -value ls -file
似乎不起作用。我打算使用 Unix 别名方式。
问问题
673 次
3 回答
9
别名无法做到这一点。从帮助Set-Alias
:
您可以为 cmdlet 创建别名,但不能为包含 cmdlet 及其参数的命令创建别名。
然而,使用一种叫做“splatting”的技术,一个函数可以很容易地做到这一点:
function lf {
ls -file @args
}
有关详细信息,请参阅help about_splatting
。
于 2013-09-24T04:32:14.847 回答
0
示例 5 fromGet-Help Set-Alias -Full
是您想要的:
Function lsfile {Get-Childitem -file}
Set-Alias lf lsfile
于 2013-09-23T23:18:53.560 回答
0
附加到来自@mike-z 的答案。
您可以将函数定义放入 PowerShell 配置文件中,以便可以再次打开 shell 重用它。
test-path $profile
// Ensure it doesn't exists before creating the profile!
new-item -path $profile -itemtype file -force
notepad $profile
只需将代码放入文件中:
function lf { ls -file @args }
您可以从官方文档中查看详细信息。
于 2016-02-24T03:51:42.630 回答