将输出重定向到两个不同的文件,一个在命令执行时应有新输出,另一个应同时具有新内容和旧内容

将输出重定向到两个不同的文件,一个在命令执行时应有新输出,另一个应同时具有新内容和旧内容

将输出重定向到两个不同的文件,一个文件在命令执行时应有新的输出,另一个文件应同时具有新内容和旧内容。

例如:

 openstack port create --network testnetwork1 test1-subport110 --disable-port-security --no-security-group 

我需要将输出重定向到两个不同的文件中。文件 A.txt 和 B.txt。每当执行 openstack port create 命令时,新输出应位于 A.txt 中,旧输出和新输出应位于 B.txt 中。

我想要像下面这样

cat A.txt
port2UUID

cat B.txt
port1.UUID
port2.UUID

请帮助我。提前致谢

答案1

cmd | tee A.txt >> B.txt

或者

cmd | tee -a B.txt > A.txt

tee(想想水管工的 T)cmd的输出到A.txt和 中附加模式进入B.txt.

使用zshshell,您还可以执行以下操作:

cmd > A.txt >> B.txt

(当多次重定向相同的文件描述符时,'ing 本身在哪里)zshT


要将 的 stderr包含cmd到 T 的流入中,请使用:

cmd 2>&1 | tee A.txt >> B.txt

或者在zsh

cmd > A.txt >> B.txt 2>&1

或者:

cmd >& A.txt >>& B.txt

相关内容