我有一個函數應該從我的PATH
環境變數中刪除目錄的重複副本。我創建了一些重複項,以便我可以測試它,但我不知道如何:
1)將腳本放入$HOME/.bashrc
文件中
答案1
只需編輯該.bashrc
文件(最好先複製原始文件,以防萬一),然後將要執行的腳本名稱添加到文件中(在文件底部.bashrc
就可以了)。
如果腳本不在您的主目錄中,請務必指定完整路徑。
答案2
環境變數的正確檔案(例如PATH
is not ~/.bashrc
but )~/.profile
。.bashrc
是互動式 shell 的設定檔;.profile
是會話啟動腳本。看是否有一個所有 shell 都能讀取的“.bashrc”等效檔案?。
Bash 的啟動檔案有點特別:在登入 shell 中,它會讀取啟動檔案~/.bash_profile
是否存在,~/.profile
否則讀取。在互動式非登入 shell 中,它讀取為~/.bashrc
。沒有理由不在互動式登入 shell 中載入互動式設置,並且在許多設置中,會話啟動 shell 不會作為登入 shell 調用,而是~/.profile
明確讀取。所以讓你~/.bash_profile
只包含這兩行:
. ~/.profile
case $- in *i*) . ~/.bashrc;; esac
如果 中 有內容,如果它們是環境變數設定之類的內容,~/.bash_profile
則將它們移至;如果它們是互動式 shell 配置(例如別名和鍵綁定),則將它們移至 。把你所有的操縱都放進去。~/.profile
~/.bashrc
PATH
~/.profile