windows编辑linux系统文件格式,DOS/Windows和Linux/Unix间的文件格式转换
做無線傳感器網絡自己生產拓撲的時候一直碰到看起來相同的文件被解析成拓撲的時候卻不同,一直摸不清原因,居然是這個問題,還好看見了這篇文章。
DOS/Windows和Linux/Unix的文件換行回車格式不同,基于 DOS/Windows 的文本文件在每一行末尾有一個 CR(回車)和 LF(換行),而 UNIX 文本只有一個換行。
1)把Dos/Windows下的文件移至Linux/Unix系統
雖然很多程序不在乎 DOS/Windows 格式的 CR/LF 文本文件,但是有幾個程序卻在乎 -- 最著名的是 bash,只要一遇到回車,它就會出問題。以下 sed 調用將把 DOS/Windows 格式的文本轉換成可信賴的 UNIX 格式:
$ sed -e 's/.$//' mydos.txt > myunix.txt
該腳本的工作原理很簡單:替代規則表達式與一行的最末字符匹配,而該字符恰好就是回車。我們用空字符替換它,從而將其從輸出中徹底刪除。如果使用該腳本并注意到已經刪除了輸出中每行的最末字符,那么,您就指定了已經是 UNIX 格式的文本文件。也就沒必要那樣做了!
2)把Linux/UNIX 文本移至 Windows 系統,使用以下腳本執行必需的格式轉換:
$ sed -e 's/$/\r/' myunix.txt > mydos.txt
在該腳本中,'$' 規則表達式將與行的末尾匹配,而 '\r' 告訴 sed 在其之前插入一個回車。在換行之前插入回車,立即,每一行就以 CR/LF 結束。請注意,僅當使用 GNU sed 3.02.80 或以后的版本時,才會用 CR 替換 '\r'。
總結
以上是生活随笔為你收集整理的windows编辑linux系统文件格式,DOS/Windows和Linux/Unix间的文件格式转换的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 诺基亚C22发布:10W充电+720P屏
- 下一篇: 菜鸟裹裹怎么切换到校园版