gpt4 book ai didi

linux - 如何将命令的输出两次写入文件

转载 作者:太空宇宙 更新时间:2023-11-04 10:36:30 24 4
gpt4 key购买 nike

我运行一些生成 ip 地址作为输出的命令。但是我正在开发一个工作流程,我需要将 ip 地址写入两次。下面是示例命令及其输出。

$ some command >> out.txt

$ cat out.txt
10.241.1.85
hdfs://10.241.1.236/
hdfs://10.241.1.237/

我想要的是复制输出,它应该看起来像这样。

10.241.1.85
hdfs://10.241.1.236/
hdfs://10.241.1.237/
10.241.1.85
hdfs://10.241.1.236/
hdfs://10.241.1.237/

有什么帮助吗?

最佳答案

@ott 在评论中给出的解决方案似乎很好:

 var=$(some cmd); echo -e "$var\n$var".

这不是将命令分配给变量,而是将命令的输出分配给变量。

如果你不想要这个,你可以使用 tee(也许这会产生一些排序问题)或者以不同的方式复制它:

some_command > out.txt.tmp
cat out.txt.tmp out.txt.tmp > out.txt
rm out.txt.tmp

通过这种方式,您可以在第一个条目的所有行之后首先获取副本的行。当你想直接将输出加倍时,可以使用

some_command | sed 'p' > out.txt

关于linux - 如何将命令的输出两次写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37216969/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com