我正在尝试在 .desktop 应用程序文件上创建一个子菜单条目,该文件使用 mpv 启动 youtube 地址。youtube 网址是从剪贴板复制的。在 gnome-terminal 中,这可以正常工作:
xclip -o | xargs mpv
但如果我做出如下 .desktop 操作:
[Desktop Action mpv]
Name=mpv clipboard
Comment=Play the url on the clipboard with mpv
Exec=xclip -o | xargs mpv
不起作用。我尝试在它前面加上 gnome-terminal -x,但还是不起作用。该怎么做?
答案1
管道是 shell 功能,而 .desktop 启动不涉及 shell。您可以使用类似以下内容:
Exec=sh -c 'xclip -o | xargs mpv'
或者(取决于剪贴板中的内容):
Exec=sh -c 'mpv "$(xclip -o)"'
或者将命令放在某个可执行脚本文件中并使用Exec=/path/to/script
。