我创建了一个包含以下两行代码的文件:
#!/bin/sh
sudo sh -c "sync; echo 3 > /proc/sys/vm/drop_caches"
我已勾选(从“属性”)相应的框以将文件作为程序运行。单击它后,系统会要求我运行它或在终端中运行。第二个选项按预期工作,终端会要求我输入密码,然后运行命令。
有没有办法直接运行该程序?目前还不行(可能是因为没有密码就无法运行 sudo 命令)
答案1
在脚本中替换sudo
为,如下所示:gksudo --
gksudo -- sh -c "sync; echo 3 > /proc/sys/vm/drop_caches"
这将打开一个简单的对话窗口来询问您的密码,而不是在您从桌面运行脚本时在未连接到终端的 STDERR 上提示您输入密码。
在较新版本的 Ubuntu 上,gksudo
可能不再预安装。如果它不起作用,您必须gksu
先安装该软件包,使用以下命令:
sudo apt-get install gksu