一、背景
由於windows和linux對換行的標識不一樣,不同系統的代碼傳遞導致代碼格式的改變中可能會帶來程序無法正常編譯通過的問題。因此根據一些編譯的錯誤提示,可以定位到是文件格式的問題,要對程序的文本文件進行轉換。
二、解決方法
windows標識一行的結束用的是回車換行符,即'\r\n',也叫做CRLF。linux對一行結束的標識則只有換行,即'\n',也就是LF。將程序從windows下copy至linux下時,只需要使用如下命令對所有的文件進行格式轉換即可(參考[1])。
find . -type f -exec dos2unix {} \;
三、查看文件類型的方法
3.1windows下使用notepad++的話,可以設置顯示所有字符(參考[2]),且notepad++右下角會顯示文件類型。

3.2linux下使用vim(參考[3])
使用vim打開文件,輸入:set ff?。根據返回結果可以文件類型
3.3linux下使用gedit
使用gedit打開文件,搜索'\r\n',看每行末尾是否存在。存在則通常是dos類型,不存在則是unix類型。
四、參考文獻
[1]linux - dos2Unix command on entire directory - Stack Overflow
