
如果我執行以下命令,文字檔案將在我的首選編輯器 (kate) 中開啟。
$ xdg-open text_file
但是,如果我嘗試以下操作,sparhawk
我的用戶名在哪裡,我會收到幾個警告,並且 jbidwatcher 會打開。
$ sudo -u sparhawk xdg-open text_file
有什麼不同?
背景
我有一個由 udev 觸發的腳本,因此將以 root 身分執行。我正在嘗試使用用戶的預設編輯器打開日誌檔案。
以下是一些可能有幫助的更多輸出。
$ xdg-mime query default text/plain
kate.desktop
$ sudo -u sparhawk xdg-mime query default text/plain
jbidwatcher.desktop
$ sudo -iu sparhawk xdg-mime query default text/plain
jbidwatcher.desktop
$ sudo -Eu sparhawk xdg-mime query default text/plain
kate.desktop
$ sudo -iEu sparhawk xdg-mime query default text/plain
jbidwatcher.desktop
之後我也嘗試過測試sudo -i
。在所有情況下,輸出都是jbidwatcher.desktop
.
答案1
sudo
改變環境。
嘗試
printenv
並sudo -u sparhawk printenv
看到差異。