格式化需要在bash脚本中更改文本文件

时间:2017-03-01 16:20:44

标签: bash

我有一个文本文件的输出。这是一个长文件,我只是在这里复制一些行。

HP83904B74E6
13569.06
7705.509999999999
HP4DC2EECAA8
4175.1
2604.13

我想打印如下。

HP83904B74E6     13569.06      7705.509999999999
HP4DC2EECAA8     4175.1        2604.13

我已尝试通过live while while循环读取文件行并尝试存储变量的值,例如variablename$i以便我可以像variablename0一样打印它,并且在每3行之后我使用If语句来打印variablename0 variablename1 variablename2的值,但是对我来说不起作用。

2 个答案:

答案 0 :(得分:1)

使用pr

$ pr -a3t tmp.txt
HP83904B74E6        13569.06        7705.509999999999
HP4DC2EECAA8        4175.1          2604.13

答案 1 :(得分:0)

  

我试过通过live while while循环读取文件行并尝试存储变量的值,例如variablename $ i这样我可以像variablename0一样打印它,并且在每3行之后我使用了If语句来打印variablename0 variablename1 variablename2的值,但是对我来说不起作用。我只是在学习bash。

while read -r a; do  
    read -r b; 
    read -r c; 
    echo "$a $b $c"; 
done < file

你明白了,

HP83904B74E6 13569.06 7705.509999999999
HP4DC2EECAA8 4175.1 2604.13