如何打印第二行作为第二列unix

时间:2012-12-26 18:21:38

标签: unix

如何将每隔一行打印为制表符分隔的第二列,如下所示。提前完成。

输入

wex
2
cr_1.b
4

输出

wex 2
cr_1.b 4

2 个答案:

答案 0 :(得分:0)

假设输入文件中没有空行,这应该可以解决问题:

awk 'length(f) > 0 { print f $0; f = "" } length(f) == 0 { f = $0 }' file

答案 1 :(得分:0)

这是另一个不依赖于行长度的选项:

awk '{ if (NR % 2 == 1) tmp=$0; else print tmp, $0; }' <filename>

如果您确实需要标签分隔符,请改用printf "%s\t%s\n",tmp,$0;