У меня есть сценарий оболочки, который запускает приложение с графическим интерфейсом в Ubuntu 12.04.
В настоящее время я запускаю приложение так, что я открываю терминал и захожу в каталог, содержащий этот файл, а затем выполняю sudo ./shellScriptFileName
, который работает нормально, однако у меня есть две проблемы, одна из которых заключается в много времени , поэтому я бы хотел добавить ярлык в панель запуска , во-вторых, терминал должен оставаться открытым, что является проблемой (надеюсь, это не будет проблемой после того, как я смогу запустить это из панели запуска.
Пояснение: я хотел бы закрыть терминал, когда мое приложение начнет работать.
Вот шаги:
Так как Вы хотите выполниться, сценарий и затем иметь терминал остаются в интерактивном режиме, мы должны использовать специальный сценарий вызывающей стороны, который в свою очередь требует expect
. Мы примем сценарий, который Вы хотите выполнить, назван test.sh
expect
с sudo apt-get -y install expect
Создайте сценарий вызывающей стороны с этим форматом:
#!/usr/bin/expect -f spawn -noecho bash # create a shell expect "$ " # wait for prompt send "cd /path to script\n" # your script directory send "./test.sh\n" # your script name interact # switch to interactive mode
Сделайте сценарий вызывающей стороны, скажите call_test.sh
, исполняемый файл с
sudo chmod +x /path/to/call_test.sh
Alt+F2
, и введите gksudo gedit /usr/share/applications/TestSH.desktop
, где TestSH - то, что Вы хотите назвать своим значком средства запуска.Файл имеет следующую форму:
[Desktop Entry] Version=1.0 # your script version Type=Application Terminal=true # you want a terminal, so... StartupNotify=true Icon= # can be a built-in (/usr/share/icons) # or a custom file, SVG or PNG Name=TestSH # Whatever you want to call it Comment= # description Exec=/path/to/call-test.sh # Path to caller script Categories=Application;
Наконец, удостоверьтесь, что фактический сценарий является исполняемым файлом, с sudo chmod +x /path/to/test.sh
Похоже, что вы еще не решили эту проблему. Посещали ли вы ссылку «как», которую я указал в комментарии выше? Click Me
Если вы убедитесь, что эту проблему нужно решить несколькими способами, круто и приятно. Проще говоря, я бы порекомендовал «фиктивный» способ заставить его работать на вас.
sudo apt-get install gnome-panel
Когда установка будет завершена, введите gnome-desktop-item-edit --create-new ~/Desktop
, эта команда отобразит всплывающее диалоговое окно «Создать панель запуска», показанное ниже [ 113]
настроить ваши параметры (Имя, Команда, Значок и т. Д.)
Вот и все, наслаждайтесь вашим новым запеченным ярлыком :-), надеюсь, это поможет.
Создание терминала после этого не очень гладкий процесс, но я предлагаю следующее:
Создайте новый скрипт со следующим содержимым: gksudo /path/to/shell/script
и сохраните его на рабочем столе. Добавьте терминал в панель запуска. Чтобы открыть программу, откройте терминал из панели запуска и щелкните сценарий с рабочего стола на терминал.
Или, если вам не нужно открывать терминал после завершения программы, создайте скрипт, как указано выше, сохраните его в любом каталоге и следуйте этому руководству, чтобы превратить его в значок запуска: http: //ubuntuforums.org/showthread.php?t=1700605
Я бы хотел, чтобы этот процесс был более плавным, но, эй, вот почему я использую Kubuntu ...