Используя сценарий для .desktop файла

У меня есть несколько .desktop файлов, которые порождают терминалы на запуске, но я хочу добавить сценарий к одному из этих .desktop файлов

Фон

11:39:22 - ~ - martin$ cd ~/.config/autostart/
11:39:33 - ~/.config/autostart - martin$ ls -l terminal_left_big.desktop left_terminal.sh 
-rwxrwxr-x 1 martin martin 196 юли 22 11:04 left_terminal.sh
-rwxrwxr-x 1 martin martin 294 юли 22 11:28 terminal_left_big.desktop

Файл .desktop

11:39:52 - ~/.config/autostart - martin$ cat terminal_left_big.desktop left_terminal.sh 
    [Desktop Entry]
    Type=Application
    Name=left_big
    Exec=xfce4-terminal --geometry 94x51+0+0 --title asd -H -x sh -c "toilet concerts; cat /home/martin/scrape_file/tmp.json | jq -c '.[] | select( .event_country | contains("Bulgaria"))' | jq; toilet weather;curl http://wttr.in/Sofia";
    Terminal=true

Файл .sh

#!/bin/bash

toilet concerts
path=/home/martin/scrape_file/tmp.json 

cat $path | jq -c '.[] | select( .event_country | contains("Bulgaria"))' | jq

toilet weather

curl http://wttr.in/Sofia
exit

Таким образом, прямо сейчас мой .desktop файл почти работает, но я заменяю -x sh -c "commans" с -x sh script.sh или -x sh ./script.sh:

11:39:52 - ~/.config/autostart - martin$ cat terminal_left_big.desktop left_terminal.sh 
    [Desktop Entry]
    Type=Application
    Name=left_big
    Exec=xfce4-terminal --geometry 94x51+0+0 --title asd -H -x sh left_terminal.sh ;
    Terminal=true

Я получаю эту ошибку:

sh: 0: Can't open left_terminal.sh

Вопрос

У меня есть +x полномочие для обоих файлов для всех пользователей. Я не думаю, что в этих сценариях существуют ошибки, какова проблема?

Править:

Когда я добавляю полный путь к сценарию оболочки:

sh: 0: Can't open /home/martin/.config/autostart/left_terminal.sh;

Ответ

Точка с запятой должна быть удалена Exec=xfce4-terminal --geometry 94x51+0+0 --title asd -H -x sh left_terminal.sh; -> Exec=xfce4-terminal --geometry 94x51+0+0 --title asd -H -x sh left_terminal.sh

1
задан 22 July 2018 в 12:42

1 ответ

Точка с запятой должна быть удалена

Exec=xfce4-terminal --geometry 94x51+0+0 --title asd -H -x sh left_terminal.sh;

должен вместо этого быть:

Exec=xfce4-terminal --geometry 94x51+0+0 --title asd -H -x sh left_terminal.sh
1
ответ дан 7 December 2019 в 15:16

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

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