2017-09-02 240 views
0

我正在使用哦,我的zsh。我无法在正则表达式中使用某些我可以在ubuntu上执行的命令,例如.. \ s。我安装了家酿,然后brew install gnu-sed --default-names但仍然无法使用sed命令。我的$ PATH变量有点搞砸了,我不知道如何纠正它。 /Users/ishansrivastava/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/local/bin:/opt/local/sbin:/opt/X11/bin:/Library/TeX/texbin我应该怎么做才能在Mac上轻松使用所有gnu命令?也请给我的命令列表,我必须使用gnu命令而不是默认的eg.gsed而不是sed等zsh gsed命令未找到

回答

0

所有依赖于你如何定义你的路径,你添加的第一个路径是那些将被首先使用,例如:

export PATH="/usr/local/opt/python/libexec/bin:$HOME/Library/Python/2.7/bin:$HOME/Library/Python/3.6/bin:$HOME/node_modules/.bin:/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:/usr/share/bin:$PATH:$HOME/projects/go/bin:$HOME/.cargo/bin" 

这将扩展为:

$ echo -e ${PATH//:/\\n} 

/usr/local/opt/python/libexec/bin 
/Users/<user>/Library/Python/2.7/bin 
/Users/<user>/Library/Python/3.6/bin 
/Users/<user>/node_modules/.bin 
/usr/local/bin 
/usr/local/sbin 
/usr/local/mysql/bin 
/usr/share/bin 
/usr/bin 
/bin 
/usr/sbin 
/sbin 
/usr/local/go/bin 
/usr/local/MacGPG2/bin 
/Users/<user>/go_appengine 
/Users/<user>/google-cloud-sdk/bin 
/Users/<user>/projects/go/bin 
/Users/<user>/.cargo/bin 
/Users/<user>/.fzf/bin 

在这种情况下,例如,你可以看到我优先python2代替python3之后,如果我的命令没有找到它将使用/usr/local/bin,然后/usr/local/sbin等等。

在你的情况下,只要确保你想用作“优先级”的命令的父路径位于其他路径之前。