web-dev-qa-db-ja.com

引数としてクリップボードを使用して.desktopエントリからmpvを起動する

私は、mpvでyoutubeアドレスを起動する.desktopアプリケーションファイルにサブメニューエントリを作成しようとしています。 youtubeのURLはクリップボードからコピーされます。 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を前に置いてみましたが、それでも動作しません。どうすればできますか?

2
B Jog

パイプラインはシェル機能であり、.desktopの起動にはシェルは含まれません。次のようなものを使用できます。

Exec=sh -c 'xclip -o | xargs mpv'

または(クリップボードの内容に応じて):

Exec=sh -c 'mpv "$(xclip -o)"'

または、コマンドを実行可能なスクリプトファイルのどこかに置き、Exec=/path/to/script

1
muru