從 ~/.bash.rc 取得變數並在登出時保留它們

從 ~/.bash.rc 取得變數並在登出時保留它們

我一直在編寫一堆 bash 腳本,以便使用 CollabNet 的 SVN 客戶端和 GNOME Keyring Daemon(又名 GKD)實現非互動式、安全性、基於 cron 的 SVN 簽出,其中一個腳本旨在啟動 GKD,收集其輸出,本質上是幾個環境變量,並將這些變數匯出到腳本運行使用者的shell 中。所有這些都是在使用者登入時透過在 ~/.bashrc 中獲取 bash 腳本來實現的。

問題是這些環境變數不會被匯出,因為腳本正在子 shell 中運行,該子 shell 在完成後退出,並且環境變數將永久取消設定。

好吧,問題是如何永久設定這些變量,這意味著即使在登入-登出工作階段中它們也會被匯出並保持不變?

答案1

只需將變數回顯到主目錄(或其他地方)以 . (所以它在預設的 ls 視圖中是不可見的)。修改您的 .bashrc 以便在啟動時執行此 shell 腳本。

例子:

foo='What the heck'; echo "foo='$foo'" > ~/.startup.sh

然後將其放入 ~/.bashrc 中完成:

. ~/.startup.sh

相關內容