複数のパイプから入力

複数のパイプから入力

複数のパイプでパラメータを渡すには?

command1 | command2 outputOfcommand1 | command3 outputOfcommand1  outputOfcommand2

私がより具体的にしたいのは、コンテナ内のいくつかのディレクトリを一覧表示し、最後に生成されたファイルをインポートしてホストシステムにインポートすることです。今私は

sudo ls -t /var/snap/lxd/common/lxd/containers/con1/rootfs/home/usr1/Downloads | head -n 1 | xargs -I{} sudo mv /var/snap/lxd/common/lxd/containers/con1/rootfs/home/usr1/Downloads/{} .

。パスはここに2回表示され、一度に減らしたいと思います。

答え1

パイプではなくコマンドの置き換えが必要なようです。

outputOfcommand1=$(command1)
outputOfcommand2=$(command2 "$outputOfcommand1")
command3 "$outputOfcommand1"  "$outputOfcommand2"

関連情報