メインプログラムを標準的な方法で実行し、グラフィックアプリケーションが実行されたら端末から切り離すようにしたいと思います。この例では、fzf
ファイルからパスを読み取り、選択したファイルとフォルダをmpv
メディアプレーヤーに提供します。
fzf < paths.txt | mpv --playlist=-
&
コマンドに追加すると、fzf
対話的に実行されません。
fzf < paths.txt | mpv --playlist=- &
mpv
たとえ--terminal=no
フラグは単に端末の入出力を無効にし、接続されたmpvプロセスをそのまま維持します。
[...] 端末と stdin/stdout/stderr の使用を無効にします。これにより、メッセージ出力が完全に削除されます。
--really-quietとは異なり、入力および端末の初期化も無効になります。
答え1
&
コマンドの後に置くと、2番目の部分だけでなくコマンド全体にも適用されます。
最後の部分をバックグラウンドで実行したい場合は、次のようにします。
fzf < paths.txt | { mpv --playlist=- & }
mpv
私が見つけることができない理由で、これはシェルタスクリストに追加されませんでした。しかし、あなたのユースケースには適しているようです。