对 .desktop 文件使用脚本

对 .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 权限。我不认为这些脚本存在错误,问题是什么?

编辑:

当我向 shell 脚本添加绝对路径时:

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

必须删除分号

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

相关内容