Рейтинг:0

Почему мой лаунчер не работает для этого скрипта? убунту 20.04

флаг ph

У меня есть скрипт "poweriso.sh", который отлично работает, дважды щелкнув в каталоге.

 экспорт LD_LIBRARY_PATH=.

 экспортировать QT_QPA_PLATFORM_PLUGIN_PATH=.

 ./poweriso

 сбросить LD_LIBRARY_PATH

Вот так файл попал в загрузку. я добавил

  #!/бин/баш

Это не было важно.

У меня есть файл .desktop «poweriso.desktop», который не запускается.

 [Вход на рабочий стол]

 Тип = Приложение

 Терминал=истина

 Имя=Мощность ISO

 Icon=/mnt/Linux-stuff/poweriso-x64/iso.png

 Exec=/mnt/Linux-stuff/poweriso-x64/poweriso.sh

Кажется, я вижу вспышку графического интерфейса, но он не запускается.

Он не отображается в процессах после попытки запуска.

.desktop находится в ~/.local/share/applications и отображается в меню запуска.

Я смотрел на это долгое время. Пожалуйста помоги.

cocomac avatar
флаг cn
Примечание: вам следует [добавить шебанг] (https://stackoverflow.com/a/10383546), чтобы система знала, что это за скрипт и как его запустить — tl; dr put `#!/usr/ bin/env bash` как первая строка вашего скрипта
treyiii avatar
флаг ph
@cocmac Это не помогло.
флаг hr
Я сомневаюсь, что он будет работать с относительными путями `.` и `./poweriso` - либо измените их на абсолютные пути, либо он может работать как есть, если вы добавите спецификацию `Path=` в свой файл .desktop, чтобы установить рабочий каталог
treyiii avatar
флаг ph
@steeldriver Я застрял на глупости. Можете ли вы привести примеры с информацией, которую я дал?
Рейтинг:1
флаг cn

Команда

./poweriso

указанный вами в скрипте системе означает: "найти исполняемый poweriso в текущем каталоге (./) и запустите его. Когда вы запускаете сценарий из программы запуска, крайне маловероятно, что текущий каталог — это тот, в котором находится сценарий.

Это для "почему".

Некоторые варианты:

  • В вашем скрипте сначала перейдите в каталог, где остается исполняемый файл, чтобы решить эту проблему.
  • В качестве альтернативы, есть .рабочий стол пусковая установка изменить текущий каталог на тот, где находится исполняемый файл с Путь= вход.
  • В качестве альтернативы укажите абсолютный путь к исполняемому файлу poweriso в вашем сценарии, а также укажите этот каталог в переменных среды, которые вы создаете, чтобы он мог найти свои ресурсы.

Кстати, не надо снят с охраны переменные в вашем скрипте. После завершения сценария пользовательская среда, установленная во время выполнения сценария, также исчезнет.

treyiii avatar
флаг ph
Спасибо. cd в скрипте работал без посторонней помощи. Я пробовал вчера другие варианты, они не работали в этой ситуации. Это было так просто, как я уже говорил, застрял на глупости.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.