來自多個管道的輸入

來自多個管道的輸入

如何從多個管道傳遞參數?

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"

相關內容