我已经安装了gnuwin32并将其附加到我的环境中,因此在命令提示符下键入ls时,我会运行linux / unix“ ls”。显然,这对于Powershell而言不是问题,但是我无法创建具有相同名称(ls)或不同名称(lsa / ll / ld)的自定义别名,并且出现以下错误:
The script failed due to call depth overflow.
+ CategoryInfo : InvalidOperation: (0:Int32) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : CallDepthOverflow
现在,这是我的Powershell脚本:
Set-Alias -name ls -value ListDirectory -Option AllScope
Function ListDirectory {
$Command = "ls -I ntuser\.* -I NTUSER\.*";
Invoke-Expression $Command
}
有任何想法吗?关于忽略文件,我需要它们。为了确保此命令在旧命令提示符下正常工作,我在Powershell中仅遇到了问题:(
好点@LotPings,这实际上可能是我的问题的答案!我意识到我暂时不需要gnuwin32,但是如果我重新安装它,我将确保输入.EXE而不只是“ ls”或“ grep”或任何其他命令!感谢臀部
—
prubini87
$Command = "ls.exe -I ntuser\.* -I NTUSER\.*";