![无法从启动器以 sudo 身份运行程序](https://linux22.com/image/994465/%E6%97%A0%E6%B3%95%E4%BB%8E%E5%90%AF%E5%8A%A8%E5%99%A8%E4%BB%A5%20sudo%20%E8%BA%AB%E4%BB%BD%E8%BF%90%E8%A1%8C%E7%A8%8B%E5%BA%8F.png)
我正在尝试使用以下命令输入创建一个启动器:
gksu sh -c "~/evelauncher/evelauncher.sh"
但失败了。当我输入:
sudo ~/evelauncher/evelauncher.sh
在终端中,它完美运行(带有文本输出)并启动程序。有人能解释一下为什么启动器不工作吗?启动器以我的用户身份具有读写权限,并且“将文件作为程序执行”复选框已选中。
答案1
尝试使用此命令(替换YOURUSERNAME
为适当的值):
gksu sh /home/YOURUSERNAME/evelauncher/evelauncher.sh
首先,它将 替换~
为您实际的绝对主目录路径。
其次,您不需要将脚本路径作为命令字符串传递给sh
,它可以直接解释脚本文件。
答案2
波浪符号 ( ~
) 在引号内不会扩展。您可以删除引号:
gksu sh ~/evelauncher/evelauncher.sh
或者改用$HOME
:
gksu sh "$HOME/evelauncher/evelauncher.sh"