昨天我在學習SHELL和環境變數時碰到一個問題。
目前使用BASH
/etc/profile --> 全域配置
~/.profile --> 個人配置(預設家目錄中存在)
這兩個都是login-shell,且後者的設定會取代前者。
OK,問題來了。若我想在/etc/profile設定PATH及PS1給全部的使用者,但~/.profile裏預設的PATH及PS1值則會取代前者,造成PATH及PS1的全域變數不起作用。若在~/.profile裏重設變數,那在/etc/profile設定全域變數不就沒有意義?要怎麼解決這個問題…
non-login shell會去讀取~/.bashrc,那non-login shell有全域變數的配置嗎?例如我在Gnome的終端機底下,個人的環境變數都配置好了。可是當我su或sudo,一些PATH什麼的又找不到,要怎麼處理這種問題?
這兩個問題是我目前碰到有疑問的,麻煩有經驗的網友能指導一下,謝謝!