為什麼 xdg-open text_file 與 sudo -u me xdg-open text_file 不同?

為什麼 xdg-open text_file 與 sudo -u me xdg-open text_file 不同?

如果我執行以下命令,文字檔案將在我的首選編輯器 (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改變環境。

嘗試

printenvsudo -u sparhawk printenv看到差異。

相關內容