我有3个文件B1.dat
,B2.dat
和B3.dat
,这些文件的行和列编号是数字,我已经将其转换为三列的文件(一个用于B dat文件),如下:
(tr -s "[:space:]" "\n" < B1.dat) > B1c.dat
(tr -s "[:space:]" "\n" < B2.dat) > B2c.dat
(tr -s "[:space:]" "\n" < B3.dat) > B3c.dat
paste B1c.dat B2c.dat B3c.dat > dfsa3c.dat
dfsa3c.dat
的内容是这样的
0.72 0.5 0.
0.72 1.5 0.
0.72 2.5 0.5045
0.72 3.5 1.
0.72 4.5 1.
0.72 5.5 1.
0.72 6.5 1.
0.72 7.5 1.
0.72 8.5 1.
0.72 9.5 1.
0.72 10.5 1.
0.72 11.5 1.
0.72 12.5 1.
0.76 0.5 0.
0.76 1.5 0.0005
0.76 2.5 0.6215
0.76 3.5 1.
0.76 4.5 1.
0.76 5.5 1.
0.76 6.5 1.
0.76 7.5 1.
0.76 8.5 1.
0.76 9.5 1.
0.76 10.5 1.
0.76 11.5 1.
0.76 12.5 1.
0.8 0.5 0.
0.8 1.5 0.00175
0.8 2.5 0.7495
0.8 3.5 1.
0.8 4.5 1.
0.8 5.5 1.
0.8 6.5 1.
0.8 7.5 1.
0.8 8.5 1.
0.8 9.5 1.
0.8 10.5 1.
0.8 11.5 1.
0.8 12.5 1.
0.84 0.5 0.
0.84 1.5 0.004
0.84 2.5 0.873
0.84 3.5 1.
0.84 4.5 1.
0.84 5.5 1.
0.84 6.5 1.
0.84 7.5 1.
0.84 8.5 1.
0.84 9.5 1.
0.84 10.5 1.
0.84 11.5 1.
0.84 12.5 1.
我想创建此文件数据,但是在第一列的值更改时插入空白行,如下所示:
0.72 0.5 0.
0.72 1.5 0.
0.72 2.5 0.5045
0.72 3.5 1.
0.72 4.5 1.
0.72 5.5 1.
0.72 6.5 1.
0.72 7.5 1.
0.72 8.5 1.
0.72 9.5 1.
0.72 10.5 1.
0.72 11.5 1.
0.72 12.5 1.
0.76 0.5 0.
0.76 1.5 0.0005
0.76 2.5 0.6215
0.76 3.5 1.
0.76 4.5 1.
0.76 5.5 1.
0.76 6.5 1.
0.76 7.5 1.
0.76 8.5 1.
0.76 9.5 1.
0.76 10.5 1.
0.76 11.5 1.
0.76 12.5 1.
0.8 0.5 0.
0.8 1.5 0.00175
0.8 2.5 0.7495
0.8 3.5 1.
0.8 4.5 1.
0.8 5.5 1.
0.8 6.5 1.
0.8 7.5 1.
0.8 8.5 1.
0.8 9.5 1.
0.8 10.5 1.
0.8 11.5 1.
0.8 12.5 1.
0.84 0.5 0.
0.84 1.5 0.004
0.84 2.5 0.873
0.84 3.5 1.
0.84 4.5 1.
0.84 5.5 1.
0.84 6.5 1.
0.84 7.5 1.
0.84 8.5 1.
0.84 9.5 1.
0.84 10.5 1.
0.84 11.5 1.
0.84 12.5 1.
原始数据文件具有更多值,因此脚本应检测何时插入空白行。
答案 0 :(得分:4)
awk 'p!=$1{p=$1;if(NR>1) print ""}1' file