試圖在Windows下使用Unix加入命令(unxutils),我得到奇怪的結果。Unix加入命令(在Windows上) - 回車符/換行符不一致
輸入文件是File_1.txt和File_2.txt。這些文件中的每一行都以標準的Windows CR/LF結尾。
File_1.txt
Path,CurrentFileCount1,CurrentFileSize1,FileCount1 **CRLF**
"c:\program files\Common Files\System\ado",1,2,3 **CRLF**
"c:\program files\Common Files\System\en-US",11,22,33 **CRLF**
"c:\program files\Common Files\System\msadc\en-US",111,222,333 **CRLF**
"c:\program files\Common Files\System\msadc",1111,2222,3333
File_2.txt
Path,CurrentFileCount2,CurrentFileSize2,FileCount2 **CRLF**
"c:\program files\Common Files\System\ado",4,5,6 **CRLF**
"c:\program files\Common Files\System\en-US",44,55,66 **CRLF**
"c:\program files\Common Files\System\msadc\en-US",444,555,666 **CRLF**
"c:\program files\Common Files\System\msadc",4444,5555,6666
每個文件都有4個字段,我在每個文件接合在所述第一場。
使用-o參數我省略了每個文件中的最後一個字段,結果如預期的那樣在每行後面有一個CR/LF。
Files_joined_3_fields.txt
Path,CurrentFileCount1,CurrentFileSize1,CurrentFileCount2,CurrentFileSize2 **CRLF**
"c:\program files\Common Files\System\ado",1,2,4,5 **CRLF**
"c:\program files\Common Files\System\en-US",11,22,44,55 **CRLF**
"c:\program files\Common Files\System\msadc\en-US",111,222,444,555 **CRLF**
"c:\program files\Common Files\System\msadc",1111,2222,4444,5555 **CRLF**
但是如果我包括兩個文件或兩個文件的所有4個領域的所有4場我得到的第4場後單CR。
Files_joined_4_fields_left.txt
Path,CurrentFileCount1,CurrentFileSize1,FileCount1 **CR**
,CurrentFileCount2,CurrentFileSize2 **CRLF**
"c:\program files\Common Files\System\ado",1,2,3 **CR**
,4,5 **CRLF**
"c:\program files\Common Files\System\en-US",11,22,33 **CR**
,44,55 **CRLF**
"c:\program files\Common Files\System\msadc\en-US",111,222,333 **CR**
,444,555 **CRLF**
"c:\program files\Common Files\System\msadc",1111,2222,3333,4444,555 **CRLF**
Files_joined_4_fields_right.txt
Path,CurrentFileCount1,CurrentFileSize1,CurrentFileCount2,CurrentFileSize2,FileCount2 **CR**
**CRLF**
"c:\program files\Common Files\System\ado",1,2,4,5,6 **CR**
**CRLF**
"c:\program files\Common Files\System\en-US",11,22,44,55,66 **CR**
**CRLF**
"c:\program files\Common Files\System\msadc\en-US",111,222,444,555,666 **CR**
**CRLF**
"c:\program files\Common Files\System\msadc",1111,2222,4444,5555,6666 **CRLF**
Files_joined_4_fields_both.txt
Path,CurrentFileCount1,CurrentFileSize1,FileCount1 **CR**
,CurrentFileCount2,CurrentFileSize2,FileCount2 **CR**
**CRLF**
"c:\program files\Common Files\System\ado",1,2,3 **CR**
,4,5,6 **CR**
**CRLF**
"c:\program files\Common Files\System\en-US",11,22,33 **CR**
,44,55,66 **CR**
**CRLF**
"c:\program files\Common Files\System\msadc\en-US",111,222,333 **CR**
,444,555,666 **CR**
**CRLF**
"c:\program files\Common Files\System\msadc",1111,2222,3333,4444,5555,6666 **CRLF**
如果我不使用包含所有字段的-o參數,則會發生同樣的情況。結果是一樣的東西在顯示Files_joined_4_fields_both.txt
我知道,我可以用sed來擺脫這些多餘的CR的,但我很好奇,爲什麼他們都存在。