2009년 11월 19일 목요일

[퍼옴.linux] 파일에서 ^M을 지우기...

DOS와 UNIX간에 텍스트파일의 차이때문입니다.
DOS에서는 라인구분을 CR+LF를 사용하고, UNIX에서는 LF만을 사용합니다.
따라서 DOS의 텍스트파일을 UNIX로 보내면 끝에 CR이 보이게 됩니다.
(참고로 맥은 CR만을 사용합니다.)

^M을 안나오게 하려면 전송할때 binary대신 ascii로 재전송하거나,
vi등에서 ^M을 제거하면 됩니다.
또는 dos2unix등의 프로그램을 이용하셔도 됩니다.
vi를 사용할때는 :1,$s/^M//g 와 같이 입력하면 파일에서 ^M을 찾아서 지워줍니다.
(^M을 입력할때는 Ctrl키를 누른상태에서 v와 m을 누르면 됩니다.)


간단한 방법이 있습니다.

예를 들어 님께서 다운받은 파일이 aaa 라면..

명령라인에서 >dos2unix aaa aaa.txt 라고 쳐 보세요.

그리고 , aaa.txt를 vi로 열어 보시면 ^M이 모두 사라져 있을 겁니다.


from http://edu.hansung.ac.kr/~pscyc/cgi-bin/spboard/board.cgi?id=solaris&action=view&gul=44&page=3&go_cnt=0

댓글 1개:

  1. textcube는 업데이트가 안되네. TISTORY 로 옮기고 싶은데 .. 구찮다. 하튼 서버관리자에게는 유용한 기능이네..

    답글삭제