![如何使 cygwin 命令优先于内置的 Windows 命令?](https://linux22.com/image/1403589/%E5%A6%82%E4%BD%95%E4%BD%BF%20cygwin%20%E5%91%BD%E4%BB%A4%E4%BC%98%E5%85%88%E4%BA%8E%E5%86%85%E7%BD%AE%E7%9A%84%20Windows%20%E5%91%BD%E4%BB%A4%EF%BC%9F.png)
如果我在 powershell 中运行 ls,则会运行 windows 内置的 ls 功能。
我怎样才能让 cygwin ls 运行?
我尝试将 cygwin/bin 移动到系统路径变量的顶部,但没有效果。
这是正常的吗?
答案1
在 powershell 中,'ls' 是一个别名。删除它的最简单方法是将以下内容之一添加到您的$PSPROFILE
:
Remove-Item Alias:\ls
或者,你可以将其替换为:
Set-Alias -Name:"ls" -Value:"ls.exe" -Option:Allscope
请记住,powershell 别名不能包含参数。如果需要参数,请先创建一个函数:
# The --% Is a powershell3+ feature to say "don't parse the rest of this line"
function lsFunc { ls.exe --% --color }
Set-Alias -Name:"ls" -Value:lsFunc -Option:AllScope