为什么 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看到差异。

相关内容