繁体   English   中英

使用分隔符使bash awk单行写入

[英]Make bash awk write in single line with separators

我是bash的新手,我需要从文件中提取数据。 我是这样写的

    awk '/Iteration/''{print $3$4}''/TOTEN/''{print $5}''/energy without entropy/'
'{print $5 }''/energy without entropy/''{print $8 }' "OUTCAR.txt" > test.txt

输出是这样的

1(1)
-298.23864042
-298.23333028
-298.23731288
1(2)
-1924.01607328
-1924.02845253
-1924.01916810

但我希望每4个结果在不同的列中但只有一行。 我尝试了awk -F'“”',但是它删除了所有结果,只留下空行编辑:我想要这样的东西

title1  title2  title3  title4
 1(1)  -298.23864042  -298.23333028  -298.23731288
 1(2)  -1924.01607328  -1924.02845253  -1924.01916810
 awk '/Iteration/{printf "%s%s\t", $3, $4} 
      /TOTEN/{printf "%s\t", $5}
      /energy without entropy/{printf "%s\t%s\n", $5, $8 }' OUTCAR.txt

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM