如何将两个命令组合成一个启动器?

如何将两个命令组合成一个启动器?

我想结合这两个命令:

rvm use 1.9.2

redcar

并将它们组合起来作为独立程序运行。但是当我创建一个启动器并输入这两个命令(用分号分隔)时,它不起作用。

如何实现这个功能?

答案1

sh -c "command 1 ; command 2"

直接作为启动器为我完成了这项工作:只需创建一个文件并将其保存为 program.desktop,然后允许作为程序执行(右键单击 - > 属性 - > 权限 - > 允许作为程序执行)

[Desktop Entry]
Version=1.0
Name=ProgramName
Comment=This is my comment
Exec=sh -c "command 1 ; command 2"
Icon=/home/alex/Pictures/icon.png
Terminal=false
Type=Application
Categories=Utility;Application;

答案2

rvm use 1.9.2 && redcar

或者

rvm use 1.9.2 || redcar

如果 rvm 命令失败,则在第二个示例中执行 redcar,而不是在第一个示例中执行。

答案3

我不确定 Gnome 启动器是否支持此功能,但在 bash 脚本中,类似这样的命令

program1; program2

意思是 - 启动程序 1,然后仅在第一个程序终止后启动程序 2。

经过一些测试后,我认为最可靠的方法是创建一个简单的脚本:

#!/bin/sh
rvm use 1.9.2 &
redcar &

设置可执行位,然后创建一个启动器这个脚本,即/home/yourusername/start_redcar.sh

另外,如果您在主文件夹中创建一个名为“bin”的目录,将脚本放在那里并将其命名为“start_redcar”,您将能够从终端或按 Alt-F2 打开的“运行命令”窗口启动它 - 只需输入命令名称即可

答案4

要使用命令行程序 ( tiff2pdf),我需要一个带有程序帮助的终端,然后是有关相关程序的附加说明 ( tiffcp),然后是命令提示符,以便我可以在同一终端中使用该程序。我在 Gnome 启动器中输入了应用程序类型的条目(不是终端中的应用程序!):

gnome-terminal -x bash -c "tiff2pdf -h; echo '** See also tiffcp'; exec bash"

相关内容