2017-09-02 243 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等等。

在你的情況下,只要確保你想用作「優先級」的命令的父路徑位於其他路徑之前。