我想将三列文本文件转置为三个单独的文件,每行一行。 换句话说,借此文件:使用剪切转置列的问题
in_file中
1 22 0.8
4 21 0.73
3 30 1.56
5 12 0.92
和产生以下3个文件:
out_file1
1 4 3 5
out_file2
22 21 30 12
out_file3
0.8 0.73 1.56 0.92
我试图用切割要做到这一点:但是
cut -d' ' -f1 in_file | tr -s '\n' '\t' >> out_file1
cut -d' ' -f2 in_file | tr -s '\n' '\t' >> out_file2
cut -d' ' -f3 in_file | tr -s '\n' '\t' >> out_file3
,我所得到的是这样的:
out_file1
1 4 3 5
out_file2
22 21 30 12
out_file3
0.8
0.73
1.56
0.92
我想不通为什么它的工作原理进行第2列,而不是第三。
感谢您的帮助!
你确定分隔符总是一个空格吗? –
分隔符总是一个选项卡。 其实,我意识到我的文章上面有一个错误 - 我现在已经更新了out_file3的实际外观(每行开始处的新选项卡)。 – Neuroguy
输入分隔符 - 是标签还是空格? 当它是一个单独的空间时,您的代码适用于我(centos 6。5) 您可以添加'cat in_file | tr -s“”'在切割前 – mousomer