如何从使用 sudo 启动的 bash 脚本执行 xfconf-query 命令?

如何从使用 sudo 启动的 bash 脚本执行 xfconf-query 命令?

我正在为 XFCE Spin Fedora 25 编写一个脚本,该脚本配置系统并使用 xfconf-query 来修改 XFCE 桌面环境的配置。

此脚本需要使用 sudo 执行,因为它必须修改系统并安装软件包。问题来自 xfconf-query 本身。当我使用 sudo 启动脚本时,它不起作用,但当我将其用作 时,它可以工作bash script.sh。我决定将 $USER 作为参数传递给脚本,并尝试使用 xfconf-query 命令su <user> -c "commands here",但它不起作用。

现在我必须使用 2 个独立的脚本,一个用于常规任务,另一个用于所有 xfconf-query 命令。

编辑:当我sudo xfconf-query -c xsettings -p /Net/ThemeName -s "Greybird"在终端中输入时,它可以工作,但是当我使用 sudo 执行相同的命令时,它不起作用。该命令可能需要由要求更改的用户使用,但奇怪的是,在su <user> -c "command here"具有特权的 bash 解释器中启动时,它不起作用。

答案1

好的,我在论坛上找到了一个解决方案。它无法与 sudo 一起正常工作,但可以与 gksudo 一起正常工作! http://forum.xfce.org/viewtopic.php?id=10870

编辑:我找到了另一种方法。我已在 xfce 论坛的那篇文章中发布了解决方案。

相关内容