awk-将前2行转换为第一行,接下来将2行转换为第二行,依此类推

时间:2014-01-20 22:05:39

标签: awk row

我想将前2行转换为第一行,接下来将2行转换为第二行,依此类推。 有人能帮助我吗?如果可以通过awk命令来做。

File.txt包含以下条目

Bin1
Bin2
Hex3
Hex4 
oct5
oct6

我想获得如下输出

Bin1  Bin2
Hex3 Hex4
oct5 oct6

4 个答案:

答案 0 :(得分:1)

您可以尝试:

awk 'NR%2{printf "%s%s",$0,OFS}NR%2==0' file

输出:

Bin1 Bin2
Hex3 Hex4 
oct5 oct6

答案 1 :(得分:1)

您可以使用xargs

$ xargs -n2 < file                                                          
Bin1 Bin2
Hex3 Hex4
oct5 oct6

paste

$ paste -d' ' - - < file
Bin1 Bin2
Hex3 Hex4
oct5 oct6

答案 2 :(得分:1)

以下是sed的解决方案

sed '$!N;s/\n/ /' file

答案 3 :(得分:1)

$ awk '{ORS=(NR%2?FS:RS)}1' file
Bin1 Bin2
Hex3 Hex4
oct5 oct6