如何为 New-Alias 命令的值提供参数?

fre*_*rik 3 powershell

我希望Get-ChildItem -force在我输入时被执行,ll并且我的profile.ps1

New-Alias -Name ll -Value Get-ChildItem -force
Run Code Online (Sandbox Code Playgroud)

但是,当我输入时ll,我可以看到该-force参数没有被使用。我究竟做错了什么?

编辑:我真正希望实现的是显示文件夹中的所有文件,即使它们是隐藏的。我希望将其绑定到ll.

Joe*_*oey 6

你不能用别名来做到这一点。别名实际上只是命令的不同名称,它们不能包含参数。

但是,您可以做的是编写一个函数而不是使用别名:

function ll {
  Get-ChildItem -Force @args
}
Run Code Online (Sandbox Code Playgroud)

但是,在这种情况下,您将不会获得参数的制表符补全,因为该函数不会通告任何参数(即使Get-ChildItemget 的所有参数都通过并起作用)。您可以通过有效地复制Get-ChildItem函数的所有参数来解决这个问题,类似于 PowerShell 自己的help函数的编写方式(您可以通过 来检查其源代码Get-Content Function:help)。