我制作了两个 shell (.sh) 脚本文件,audio.sh
用于video.sh
我的 Pi CCTV 项目。
我把这两个脚本合并起来:
sh -x video.sh & sh -x audio.sh &
我将上述命令放入一个 shell 文件中并最终创建该test.sh
文件,该文件现在可以同时启动这两个 shell 文件。
但是,我并不满足于运行以下命令:sudo ./test.sh
。我想制作一个可以启动的可执行文件(双击并启动)test.sh
。
YouTube 上有一个视频演示了如何在 Mac OS 中创建 Apple 脚本(链接两个文件、编译和执行)并通过可执行程序(.app 格式)导出它。如果启动该程序,则两个 shell 脚本将一起在两个终端窗口中启动,如视频中所示:https://www.youtube.com/watch?v=hkY4_qYWfqI
在 Ubuntu 16.04 中可以做这样的事情吗?
制作一个同时执行两个 shell 脚本的程序?
有任何想法吗?
答案1
文件.desktop
将提供您想要的内容。
创建以下文件,文件名如下ANYTHING.desktop
:
[Desktop Entry]
Encoding=UTF-8
Exec=gksudo /MAKE/THIS/THE/PATH/TO/test.sh
Path=/MAKE/THIS/THE/PATH/TO/THE/OTHER/FILES
Type=Application
Terminal=true
Name=Pi CCTV project
Categories=AudioVideo;
将其保存到您想要的任何位置,例如~/Desktop
,当您单击它时它将运行。
或者,~/.local/share/applications
如果您希望它出现在菜单中,请将其保存。
这将使用test.sh
而gksudo
不是 来运行sudo
,以便为您提供图形密码对话框。
在末尾test.sh
添加一个,如下所示:wait
sh -x video.sh & sh -x audio.sh & wait
这是必要的,这样窗口才不会关闭,直到两个程序都完成。
如果你确实想要两个窗口,请更改test.sh
为:
xterm -e sh -x video.sh & xterm -e sh -x audio.sh & wait
并在文件中更改Terminal=true
为。false
.desktop