日期:2014-05-16  浏览次数:20646 次

格式化文本处理的一个问题
当前的文件格式如下:

A1 A2 A3 B1 B2 B3 C1 C2 C3
D1 D2 D3 E1 E2 E3
F1 F2 F3
G1 G2 G3 H1 H2 H3

其中A1,A2等分别是字符串,每行的数量不定,但都是一组三个数据 由于处理需要我想把文件变成这样格式的:

A1 A2 A3
B1 B2 B3
C1 C2 C3
D1 D2 D3
E1 E2 E3
F1 F2 F3
G1 G2 G3
H1 H2 H3

谢谢大家!
------解决方案--------------------
#!/bin/bash

awk '{ for(i=1;i<=NF;++i){printf("%s", $i); if(i%3==0){printf("\n");}else{printf(" ");} }}' input.txt


A1 A2 A3
B1 B2 B3
C1 C2 C3
D1 D2 D3
E1 E2 E3
F1 F2 F3
G1 G2 G3
H1 H2 H3