특수 문자 ^M 처리하기

img001

이 문제가 왜 발생했는지는 모르겠다. 그냥 갑자기 발생했다. visual studio code에서 특정 폴더를 열고 파일의 행을 복사해서 사용하던 도중 발생한 문제였다.

윈도우에서 편집시 개행문자가 붙어서 저장되는데 이를 Unix기반에서 읽는 경우 발생하는 문제라고한다.

분명 또 다시 찾을 내 자신을 걱정하며 기록해둔다.

1번 방법: vi

이건 vi 에서 해당 문자를 제거하는 방법을 설명이다.

일단 이 망할 문자는 CTRL + v와 m 키를 누르면 생성된다.

vi -b 파일명

-b 옵션은 바이너리 모드로 여는 옵션이다. 이렇게 해야 이상한 개행문자가 잘보인다.

:%s/^M$//g

여기서 중요한건 ^M 부분은 CTRL+v CTRL+m을 눌러야 생기는 문자라는 것이다.

저렇게 바꾸고 저장하면된다.

sed 커맨드로도 가능하지만 생략한다.