2015-09-26 100 views
0

我很努力地完全理解我的操作系統上的路徑設置。我確保總是有我需要在.bashrc中設置的內容,但是當我運行echo $PATH時,我得到很多東西和重複,我不想要部分路徑。它從哪裏得到這個信息,我如何清理那裏的所有內容,只反映我在.bashrc中的內容。這也導致我的系統讀取一個我不想找到的二進制文件,因爲它位於echo $PATH。這裏是我的echo $PATH完整的結果:

PATH=/opt/jdk1.8.0_60/bin:/opt/jdk1.8.0_60/jre/bin:/usr/local/bin:/usr/bin:/usr/local/maven/bin:/ebs/wfx-etl/scripts:/ebs/config:/usr/local/go/bin:/ebs/spark1.5/bin:/opt/jdk1.8.0_60/bin:/opt/jdk1.8.0_60/jre/bin:/usr/local/bin:/usr/bin:/usr/local/maven/bin:/ebs/wfx-etl/scripts:/ebs/config:/usr/local/go/bin:/ebs/spark1.5/bin:/opt/jdk1.8.0_60/bin:/opt/jdk1.8.0_60/jre/bin:/usr/local/bin:/usr/bin:/usr/local/maven/bin:/ebs/wfx-etl/scripts:/ebs/config:/usr/local/go/bin:/ebs/spark1.5/bin:/opt/jdk1.8.0_60/bin:/opt/jdk1.8.0_60/jre/bin:/usr/local/bin:/usr/bin:/usr/local/maven/bin:/ebs/wfx-etl/scripts:/ebs/config:/usr/local/go/bin:/ebs/spark1.5/bin:/opt/jdk1.8.0_60/bin:/opt/jdk1.8.0_60/jre/bin:/usr/local/bin:/usr/bin:/usr/local/maven/bin:/ebs/wfx-etl/scripts:/ebs/config:/usr/local/go/bin:/ebs/spark1.5/bin:/ebs/anaconda3/bin:/opt/jdk1.8.0_60/bin:/opt/jdk1.8.0_60/jre/bin:/usr/local/bin:/usr/bin:/usr/local/maven/bin:/ebs/wfx-etl/scripts:/ebs/config:/usr/local/go/bin:/ebs/spark1.5/bin:/usr/local/rvm/gems/ruby-1.9.3-p551/bin:/usr/local/rvm/gems/[email protected]/bin:/usr/local/rvm/rubies/ruby-1.9.3-p551/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/rvm/bin 

,這裏是什麼,我在我的.bashrc:

export SBT_HOME=/usr/local/sbt 
export R_HOME=/usr/local/R-3.1.2 
export JAVA_HOME=/opt/jdk1.8.0_60 
export JRE_HOME=/opt/jdk1.8.0_60/jre 
export M2_HOME=/usr/local/maven 
export SPARK_HOME=/ebs/spark1.5 
export PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:/usr/local/bin:/usr/bin:${M2_HOME}/bin:/ebs/wfx-etl/scripts:/ebs/config:/usr/local/go/bin:${SPARK_HOME}/bin:$PATH 
export PATH=/ebs/anaconda3/bin:$PATH 
export PGPASSFILE=$HOME/.pgpass.conf 
export EDITOR=vim 
+3

你能分享你在做什麼的'.bashrc'? – Mureinik

回答

1

您可以完全覆蓋在你的.bashrc這樣的:

export PATH=/foo/bar:/baz/quux 

用你喜歡的任何路徑代替,但建議如果你錯過了/bin/usr/bin你會後悔的。

+0

這不是一個好主意。您的系統管理員可能在您的外殼在啓動時繼承的'PATH'上有目錄,您不應該刪除它。 – chepner

+0

我在問題中添加了我當前的bashrc。所以我的印象是,我已經在我的bashrc中使用了export語句,並假設它會覆蓋所有內容。仍然不知道'echo $ PATH'中的所有內容來自哪裏。 – horatio1701d

0

這是設置所有路徑的Java delevopment工具包(jdk)。 我想這很有用。 python中也有anaconda 3。

,或者你可以午餐env -i您的bash/zsh來設定一個空的環境

env -i bash 

env -i zsh