У меня есть эта простая команда, чтобы проверить, существует ли файл:Desktop файл не выполняют команды
if [ -f /tmp/file.txt ] ; then echo "yes" ; else echo "no" ; fi
Если я запускаю его direcly на терминале, он работает (показывает «да», если файл существует и «нет» если это не так). Но я хочу, чтобы выполнить эту команду внутри .desktop
файл, используя его в качестве значения Exec
ключа:
[Desktop Entry]
Version=1.0
Type=Application
Exec=if [ -f /tmp/file.txt ] ; then echo "yes" ; else echo "no" ; fi
StartupNotify=true
Terminal=false
Categories=Utility;X-XFCE;X-Xfce-Toplevel;
MimeType=x-scheme-handler/custom
Name=Custom Test
Comment=Custom
Если я пытаюсь выполнить xdg-open custom://
я custom://: error opening location: The specified location is not supported
, но если я изменить Exec
значение echo "yes"
и выполнить xdg-open custom://
, это показывает yes
на терминале.
Что мне здесь не хватает?
Это, вероятно, не запустить оболочка. Вы можете попробовать его с помощью 'sh -c '...'' или, желательно, поместив инструкцию в скрипт и указав это. –