![如何将两个命令组合成一个启动器?](https://linux22.com/image/811067/%E5%A6%82%E4%BD%95%E5%B0%86%E4%B8%A4%E4%B8%AA%E5%91%BD%E4%BB%A4%E7%BB%84%E5%90%88%E6%88%90%E4%B8%80%E4%B8%AA%E5%90%AF%E5%8A%A8%E5%99%A8%EF%BC%9F.png)
我想结合这两个命令:
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"