
假設您正在一台非常舊的 unix 伺服器上工作,其中dos2unix
不存在、 perl
、tr
和。sed
如何將文件從DOS到UNIX格式?
答案1
我認為您指的是刪除行尾的插入符號-M。您可以使用 vi 中的搜尋和替換來執行此操作。
在 vi 中我通常這樣做:(其中“^”代表 CTRL):
:%s/^V^M//g
螢幕上顯示為:
:%s/^M//g
答案2
tr
沒有或的伺服器sed
必須非常舊,或缺少一些基本命令。希望ed
就在那裡;它存在於Unix第一版。
ed /path/to/file
1,$s/^V^M$//
w
q
其中^V^M
表示先鍵入Ctrl+ V,然後鍵入Ctrl+ M(輸入文字換行符號)。如果您知道所有行都以 CR LF 結尾,則可以使用1,$s/.$//
它(不加區別地刪除每行的最後一個字元)。