windows 檔案換行: \r\n (0x0d,0x0a)

unix 檔案換行: \n (0x0a)

在 Windows 環境寫檔案,

再到 Unix 環境下用 VIM 編輯, 會看到行尾常常出現 ^M.

 

使用 tr 指令幫助拿掉 windows 多加上的 \r (0x0d).

 

find . -name \*.c | while read FILE
do
    if tr -d '^M' < $FILE > $FILE.bak
    then
        mv -f $FILE.bak $FILE
    fi
done


find . -name \*.h | while read FILE
do
    if tr -d '^M' < $FILE > $FILE.bak
    then
        mv -f $FILE.bak $FILE
    fi
done

 

Reference:

1. 拿掉單一檔案的 ^M

 http://www.theunixschool.com/2011/03/different-ways-to-delete-m-character-in.html

2. 拿掉多個檔案的 ^M

http://www.unix.com/shell-programming-and-scripting/45331-removing-m-multiple-files.html

3. tr

http://fanqiang.chinaunix.net/a1/b1/20010430/142744_b.html

 

 

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 kk 的頭像
    kk

    kk

    kk 發表在 痞客邦 留言(0) 人氣()