如何组合文件中的备用行?

如何组合文件中的备用行?

我有一个 4 行输入文件,我需要修改该文件以组合备用行。我想就地执行操作。

INPUT:
Tom
Nathan
Jack
Polo

Desired Output:
Tom    Jack
Nathan Polo

一种方法是收集奇数行并翻转它们并剪切偶数行并组合两个文件以获得最终输出。但我正在寻找一个更简单的解决方案。

答案1

给定

$ cat INPUT
Tom
Nathan
Jack
Polo

然后

$ pr -s -T -2 < INPUT
Tom     Jack
Nathan  Polo

(以列之间的单制表符间距分页,无标题,两列);或者

$ paste -d ' ' - - < INPUT | rs -T
Tom     Jack
Nathan  Polo

(粘贴然后转置)

答案2

我使用下面的命令来获得相同的结果。

与 pr 相比,我接受它的复杂性。但这是我的尝试

for i in `sed -n '1~2p' l.txt`;do sed -n "/$i/,+1p" l.txt; done| split -l 2 |paste xaa xab

输出

Tom     Jack
Nathan  Polo

相关内容