windows為乙個回車』\r』(cr或^m)和乙個換行』\n』(nl或lf)(括號內是其它顯示方法)
linux為乙個換行』\n』
mac為乙個回車』\r』
檢視檔案是否含有windows換行符:
windows:notepad++ ==>檢視 ==>顯示所有符號
linux:file test.txt
test.txt: ascii text, with crlf line terminators
vim:命令模式下輸入:e ++ff=unix,^m就是windows換行符
轉換方法:
windows下notepad++ ==>編輯 ==> 文件格式轉換 ==> 轉為unix
linux:sed -i 's/\r//' filename
linux:dos2unix filename
(需要先安裝dos2unix)
dos2unix語法:dos2unix [-hkqv] [-c convmode] [-o file …] [-n infile outfile …]
引數說明:
-k:保持輸出檔案的日期不變
-q:安靜模式,不提示任何警告資訊。
-v:檢視版本
-c:轉換模式,模式有:ascii, 7bit, iso, mac, 預設是:ascii。
-o:寫入到原始檔
-n:寫入到新檔案
linux批量轉換:find -type f | xargs dos2unix -o
vim:命令模式下輸入:%s/^m//g
或者:g/\^m/s/\^m//
vim:命令模式輸入:set ff?
如果出現fileforma=dos 表示是windows上的換行符。繼續輸入:set fileformat=unix
儲存即可 window和linux換行符處理
換行方式 在早期的印表機時代,開始新的一行要占用兩個字元的時間。如果到了一行的結尾處,你要快速回到新的一行的開頭,需要列印針頭在紙面上飛快地掠過,常常會在紙面上留下汙點。解決這個問題的辦法就是,用兩個字元 乙個字元來移到第一列,另乙個字元來新增一行。計算機產生以後,儲存較為昂貴,在如何解決回車換行這...
Linux和window檔案換行符問題
通過介面化git操作 遇到如下報錯 簡單翻譯,得到以下內容 文字相同,但檔案不匹配 發現以下差異 換行符在linux中有修改過內容導致的,通過查詢資料,其報錯問題根源是windows和linux換行符表現形式不同造成的,區別如下表 windows linux macbook 換行符 r n n r ...
git在window與linux的換行符問題
1 背景。我win7,後端是win10,使用了tortoisegit工具。我使用ssh,他使用http。倉庫是在linux,使用gitlab管理 4 總結。這個問題是git在window與linux的換行符問題,autocrlf在window和linux下不一樣。假如不同的終端提交時候使用了不同的換...