将输出重定向到两个不同的文件,一个文件在命令执行时应有新的输出,另一个文件应同时具有新内容和旧内容。
例如:
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
.
使用zsh
shell,您还可以执行以下操作:
cmd > A.txt >> B.txt
(当多次重定向相同的文件描述符时,'ing 本身在哪里)zsh
。T
要将 的 stderr包含cmd
到 T 的流入中,请使用:
cmd 2>&1 | tee A.txt >> B.txt
或者在zsh
:
cmd > A.txt >> B.txt 2>&1
或者:
cmd >& A.txt >>& B.txt