我想將三列文本文件轉置爲三個單獨的文件,每行一行。 換句話說,藉此文件:使用剪切轉置列的問題
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