запуск сценария при запуске ubuntu [дубликат]

На этот вопрос уже есть ответ здесь:

Я использую Ubuntu 14.04 LTS на виртуальной машине и пытаюсь настроить его так, чтобы при запуске rts up, он также автоматически следует описанию на startmeup.sh.desktop , чтобы запустить сценарий taskhome.sh .

Скрипт startmeup.sh.desktop имеет следующий код:

[Desktop Entry]
Type=Application
Exec=/home/kvm/scripts/taskhome.sh
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[en]=Startmeup
Name=Startmeup
Comment[en]=
Comment=

Я помещаю файл startmeup.sh.desktop в папку config \ autostart и я сделал его исполняемым с помощью команды chmod + x , но когда я перезагружаю Ubuntu, скрипт taskhome.sh не выполняется (я думаю, это просто из-за запуска . sh.desktop тоже просто не запускается).

Если я запустил дом задач .sh вручную У меня нет никаких проблем. Если я открою папку, содержащую сценарий startmeup.sh.desktop, и дважды щелкну по ней, появится taskhome.sh скрипт запускается без проблем.

Однако, если я попытаюсь выполнить сценарий startmeup.sh.desktop на терминале с помощью команды ./ startmeup.sh.desktop , я получу сообщение об ошибке "

line 1: [Desktop: command not found.

Могу ли я что-нибудь сделать, чтобы скрипт заработал при запуске Ubuntu?

1
задан 30 December 2014 в 12:10

3 ответа

Выполнение ./startmeup.sh.desktop от терминала не будет работать, поскольку эти .desktop не сценарий оболочки.

Также добавьте:

Terminal=true

, который мог бы помочь!

Для запущения приложения на запуске необходимо сделать это обычный путь:

3
ответ дан 10 November 2019 в 08:22

Ожидайте минута, какая папка Вы вставляли сценарий? Ваш Q говорит config\autostart..., он, как предполагается, находится в ~/.config/autostart (в Вашей домашней папке) и должен работать, когда пользователь входит в систему, не только на начальной загрузке (если тот пользователь не автоматически зарегистрирован также)

, Вы не имеете Icon=... строка, но это не могло бы испечь большую разницу.

И что сценарий, как предполагается, делает? Это не установлено работать в терминале (Terminal=true, мог бы сделать это), поэтому, как Вы знаете, что это не работает в фоновом режиме?

2
ответ дан 10 November 2019 в 08:22

Попытайтесь изменить режим "Exec =" с этим:

Exec=gnome-terminal -x /home/kvm/scripts/taskhome.sh

Страница справочника для-x:

-x, --execute
Execute the remainder of the command line inside the terminal.

Должен быть похожим:

[Desktop Entry]
Type=Application
Exec=gnome-terminal -x /home/kvm/scripts/taskhome.sh
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[en]=Startmeup
Name=Startmeup
0
ответ дан 10 November 2019 в 08:22

Другие вопросы по тегам:

Похожие вопросы: