[Unix] VI에서 ^M 넌 누구냐?

개발 노트 2008. 12. 4. 10:58 posted by 무병장수권력자



작성자 : 김문규
최초 작성일 : 2008.12.04

아무래도 VI는 불편할 수 있습니다. 그래서 윈도우에서 소스코딩 작업을 하고 컴파일만 유닉스에서 하는 분들도 꽤 많지요.

이 때 가끔 나타나는 황당한 녀석이 있지요.

^M   <-- 넌 누구냐?


행의 끝마다 달려 있는 저 녀석! 시스템에 따라서는 저것때문에 에러가 나기도 합니다.
CR/LF 때문이지요. (CR:Carrige Return, LF:Line Feed)

해결책은 다음과 같습니다.

1. vi를 이용
:%s/^M//g
이걸 실제로 입력할 때는
:%s/(control을 누른채 v와 m을 차례로)//g

2. vi 5.0이상인 경우
:set fileformat=unix
:set fileformat=dos

3. 쉘에서
sh# dos2unix 문서명
sh# unix2dos 문서명

4. ultraedit
menu -> format -> Convert CR/LFs to Wrap
menu -> format -> Convert Wrap to CR/LFs

이제 고민 끝입니다. ^^