Я сделал два файла сценария оболочки (.sh), audio.sh
и video.sh
для моего проекта Pi CCTV.
И я объединил эти два сценария:
sh -x video.sh & sh -x audio.sh &
Я поместил указанную выше команду в файл оболочки и, наконец, создал файл test.sh
, который теперь запускает два файла оболочки одновременно.
Однако я не удовлетворен тем, что должен выполнить команду: sudo ./test.sh
. Я хотел бы создать исполняемый файл (двойной щелчок и запуск), который можно запустить test.sh
.
На YouTube есть видео, демонстрирующее, что в Mac OS можно создать сценарий Apple (связать два файла, скомпилировать и выполнить) и экспортировать его с помощью исполняемой программы (формат .app). Если программа запускается, два сценария оболочки запускаются вместе в двух окнах терминала, как вы видите на видео: https://www.youtube.com/watch?v=hkY4_qYWfqI
Можно ли сделать такую вещь в Ubuntu 16.04?
Создать программу, которая выполняет два сценария оболочки одновременно?
Есть идеи?
Файл .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
.