vim下unix和dos格式轉換
很久以前,老式的電傳打字機使用兩個字元來另起新行。乙個字元把滑動架移回首位 (稱為回車, ),另乙個字元把紙上移一行 (稱為換行, )。
當計算機問世以後,儲存器曾經非常昂貴。有些人就認定沒必要用兩個字元來表示行尾。
unix 開發者決定他們可以用 乙個字元來表示行尾。
apple 開發者規定了用 。
開發 ms-dos (以及微軟視窗) 的那些傢伙則決定沿用老式的。
那意味著,如果你試圖把乙個檔案從一種系統移到另一種系統,那麼你就有換行符方面的麻煩。
如果你用往日美好的 vi 來嘗試編輯乙個採用 ms-dos 格式的檔案,你將會發現每一行的末尾有個 ^m 字元。(^m 就是 )。
vim 編輯器能自動識別不同檔案格式,並且不勞你操心就把事情給辦妥了。選項 'fileformats' 包含各種各樣的格式,vim 會在編輯乙個新檔案之初
嘗試該選項定義得各種格式。
例如,下面這個命令告訴 vim 先嘗試用 unix 格式,其次, 嘗試
ms-dos 格式:
:set fileformats=unix,dos
編輯乙個檔案時,你將注意到 vim 給出的資訊訊息報中包括檔案所用得格式。如果你編輯的是本地格式檔案(你編輯的檔案格式和所用系統一致),你就不會看到任何格式名。因此在 unix 系統上編輯乙個 unix 格式檔案不會產生任何關於格式的資訊。但你若編輯乙個 dos 檔案,vim 將這樣通知你:
"/tmp/test" [dos] 3l, 71c
你可以用 'fileformat' 選項把檔案從一種格式轉換為另一種。例如,假定你有個名為 readme.txt 的 ms-dos 檔案,你要把它轉換成 unix 格式。首先編輯這個採用 ms-dos 格式的檔案:
vim readme.txt
vim 將識別出那是乙個 dos 格式檔案。現在把這個檔案的格式改為 unix:
:set fileformat=unix
:write
或者:
:set ff=unix
這個檔案就以 unix 格式存檔了。
dos格式轉unix格式
今天用shell傳送郵件時,總是報打不開或者找不到檔案錯誤。後來alex發現是檔案是dos格式,在vi下轉換成unix格式之後就可以了。dos格式檔案傳輸到unix系統時,會在每行的結尾多乙個 m,當然也有可能看不到,但是在vi的時候,會在下面顯示此檔案的格式,比如 dos.txt dos 120l...
指令碼檔案dos格式轉unix格式
如果作業系統是windows,在windows下編輯的指令碼,有可能有不可見字元。指令碼檔案是dos格式的,即每一行的行尾以 r n來標識,其ascii碼分別是0x0d,0x0a。可以有很多種辦法看這個檔案是dos格式的還是unix格式的,還是mac格式的 vi filename set ff 可看...
DOS 和Unix 檔案 vim轉化
很久以前,老式的電傳打字機使用兩個字元來另起新行。乙個字元把滑動架移回首位 稱為回車,另乙個字元把紙上移一行 稱為換行,當計算機問世以後,儲存器曾經非常昂貴。有些人就認定沒必要用兩個字元來表示 規定了用 開發 ms dos 以及微軟視窗 的那些傢伙則決定沿用老式的。那意味著,如果你試圖把乙個檔案從一...