我正在使用一個安裝程序,它在~/.bash_profile
文件中添加一個環境變數。
當我啟動碼頭伺服器時,它無法找到該條目...
當我跑步時
$ source ~/.bash_profile
它重新加載~/.bash profile
文件並且伺服器成功啟動,沒有任何問題。
問題是我的客戶不會啟動新的 shell 會話,也不會手動刷新檔案~/.bash_profile
。
我嘗試source ~/.bash_profile
在呼叫jetty伺服器的啟動腳本時呼叫的shell腳本中新增該命令,但它也不起作用。
還有其他方法可以重新載入~/.bash_profile
目前會話嗎?您可以向我提供的任何資訊將不勝感激。
答案1
shell 腳本通常不是由 bash 運行(除非您明確安排了這一點)。
請注意,在許多 Linux 系統上 /bin/sh 現在是dash
,而且由於 是source
從 導入的非標準 shell 命令csh
,因此像 dash 這樣的 shell 不支援它。
.
只要您傳遞給它的檔案參數不包含非標準副檔名,POSIX 定義的點命令 ( ) 就應該可以運作。