将单列文本文件编辑为多列

时间:2016-02-10 09:12:45

标签: linux bash unix textedit

我有一大堆当前在单列中的文本文件,每行代表fMRI会话的时间点。

我现在想将这一列拆分成多列,以便我可以制作信号的时间序列。

所以,例如: 一个文本文件有351行(时间点)。 我的实验包括8个40体积的块,另外31个体积的休息期(即8 * 40 + 31 = 351)。 现在,我想将此文本文件转换为以下格式:

8(w)x40(h)+1x31...

即,

a
b
c
d
e
f

a d
b e
c f

提前感谢您的帮助!!

1 个答案:

答案 0 :(得分:0)

对于您的示例,这有效:

split -l 3 file0 # split file into chunks of 3 lines
nl xaa > file1 # add linecount for join
nl xab > file2
join file1 file2 > pre # join based on linecount colum
sed 's/ *[0-9]*.//' pre > result # remove linecount colum

但123的评论(xargs -n3< file)提出的解决方案要简单得多,只能在转置表中生成!