매번 잊어버려서 여기에 기록해 남기려고 합니다.
윈도우 컴퓨터에서 코딩하고 유닉스 계열 서버에 업로드 하다 보면
나중에 서버에서 vi로 파일을 편집하려고 열어볼 경우 엄청난 ^M 들의 압박을 받을때가 있지요. 이 ^M 캐릭터를 하나 하나 지워줘도 되지만 수백 수천줄 씩 내려가는 파일은 상상도 하기 싫어집니다. 이럴때 가장 쉽게 해결하는 방법이 몇가지 있는데 그 중 두가지만 기록하렵니다.
1. 첫번째는 dos2unix 라는 명령을 쓰는 것입니다. 단 이 명령이 설치되어 있어야 하겠죠? (설치는 apt-get install dos2unix 나 yum install dos2unix 등 개인의 시스템에 맞는 방법으로 설치하세요.)
$ dos2unix 파일명
이 명령은 도스포멧의 텍스트 파일을 유닉스포멧으로 바꿔줍니다. ^M 캐릭터를 갖고있는 여러개의 파일들을 모두 한꺼번에 변경할 수 있어 편하지만 dos2unix 명령이 없으면 쓸 수 없다는 단점이 있지요. 호스팅 서비스를 받고 있는 경우 이 명령 사용 권한이 호스팅 유저들에게 없거나 아예 설치되어 있지 않으면 그림의 떡...
2. 그래서 두번째로는 어디에서나 사용 가능한 vi 에디터 안에서 "찾아 바꾸기" 로 문서 하나에 있는 모든 ^M 을 없애는 방법입니다.
$ vi 파일명
:%s/^M//g
여기서 ^M 캐릭터는 키보드에서 보이는 그대로 입력하면 안되고요 꼭 다음의 방법을 써서 입력해야합니다: 키보드에서
Control + V + M 을 누르면 위와 같이
^M 캐릭터가 한 개의 글자로 들어갑니다.
(참고: 키보드에서 ^ 캐릭터와 M 캐릭터를 따로 따로 입력해서 넣을 경우에는 두개의 서로 다른 캐릭터로 인식하게 되기 때문에 검색및 치환이 되지 않습니다.)
http://blog.nice2seeyou.com/mike/trackback/233