2014-02-20 59 views
1

我試圖將列連接到文本文件。 列如下:將列連接到文件

14_00 

132_1 



343_12 

23 


2 
2_1 

它是由數字和空格(當沒有指定號碼)

另一個文件我要添加此列中(在文件的開頭)由製表符分隔的數字組成,與第一個文件具有相同的行數。

我嘗試下面的命令:

paste -d "\t" file1.txt file2.txt > merged.txt 

它的工作原理,只是罰款,出於某種原因,我有一個「^ M」在第一列的結束。

這個^ M從哪裏來,我該如何擺脫它? 我嘗試更改粘貼選項中的分隔符,但問題依然存在。

+1

您的第一個文件具有CRLF(Windows/DOS)行結尾。 Unix不介意在標記行尾的NL(LF)之前是否存在CR,因此它將CR保留爲第一個文件的行的一部分,並從第二個文件中添加該行。首先將文件轉換爲Unix。 –

回答

1

I have a "^M" at the end of the first

這意味着你必須在文件本身\r

要擺脫他們,你可以使用這個sed的:

sed -i.bak $'s/\r$//' file 

或使用:dos2unix工具。