我在 Ubuntu 15.4 上运行 Gnome。
我想同时执行两个或更多操作,但让我们尝试两个:
- sudo pm-暂停
- gnome 屏幕保护程序命令 -l
已添加 pm-suspend,并且允许通过指定以下内容无需提供密码即可执行:
%sudo ALL = (root) NOPASSWD: /usr/sbin/pm-suspend`
文档 - Exec, 和执行变量/操作如果可以拥有多个 Exec,则没有引用,但不幸的是:
[Desktop Entry]
_Name=Sleep and logout
_GenericName=Sleep and logout
#Exec=gnome-screensaver-command -l & sudo pm-suspend # does not work
#Exec=gnome-screensaver-command -l
#Exec=sudo pm-suspend # does not work either
Terminal=false
Type=Application
Categories=System;Security;
我愿意接受有关如何实现给定功能的任何其他建议,但以下建议除外:
- 编写一个脚本并以 sudo 或类似方式运行它 - 我认为基于此的解决方案不安全,我们不要深入研究这个问题
- 使用 gnome 电源开关或任何名称(右上角) - 我的没有暂停选项
此外,虽然我很高兴得到上述内容,但我更高兴得到一个答案,说明如何启动多个不同的命令(无需脚本/编译自己的二进制文件等),以防我想捆绑和自动执行其他一些操作。
答案1
要在一个启动器中运行多个命令,您需要使用以下语法:
Exec=/bin/bash -c "command_1 & command_2"
或者,如果第二个应该等待第一个成功终止:
Exec=/bin/bash -c "command_1 && command_2"
或者,按照 Bytecommander 的建议(感谢完成!),如果command_2
应该等待command_1
完成,但无论是否command_1
成功完成,都应运行:
Exec=/bin/bash -c "command_1 ; command_2"