Bash
使用環境變數啟動桌面應用程序的方法
我實際上有一些 GUI 應用程序需要的一個環境變數:
QT_QPA_PLATFORMTHEME=qt5ct
. 現在我將它導出為~/.bashrc
.當我
qt5ct
從終端執行時,應用程序會看到環境變數。但不是從桌面文件執行時。所以我嘗試了多種方法,更改了
Exec=
桌面文件的行(qt5ct
如果應用程序看到環境變數,則啟動顯示):
sh -e 'qt5ct'
: 檢測不到sh -c 'qt5ct'
: 檢測不到sh -a -e 'qt5ct'
: 檢測不到bash -c 'qt5ct'
: 檢測不到最後,設法找到了一種可行的棘手方法(在我看來):
/usr/bin/env QT_QPA_PLATFORMTHEME=qt5ct qt5ct
:檢測所以我的問題是:有沒有辦法
QT_QPA_PLATFORMTHEME
像我一樣導出變數環境~/.bashrc
?因為我需要時間手動編輯桌麵條目(也許這些會被應用程序的更新自動覆蓋?)。我嘗試在 , 中導出
~/.bashrc
,~/.profile
沒有任何更改,但我沒有任何~/.xsession
.PS對不起,如果有英文錯誤,如果標題不如我的問題準確。
系統範圍的變數可以設置在
/etc/environment
. 請注意,此文件不接受變數或 shell 程式碼,僅用於靜態變數,寫為:QT_QPA_PLATFORMTHEME=qt5ct
通常
~.profile
應該是 GUI 登錄的來源,但維護者之間似乎對此存在一定的爭論。請參閱此執行緒-不採購背後的一般想法~/.profile
是,該文件最初是用於 shell 登錄的,而 GUI 登錄不被視為 shell 登錄。因此,未獲取的文件可能與您目前的桌面管理器有關。