vim
vi로 텍스트 파일을 DOS에서 UNIX로 변환하기
수색…
비고
^M
문자는 Vim ( <cm>
또는 <CR>
)에 캐리지 리턴을 나타냅니다. Vim은 파일의 적어도 온라인 라인이 LF
라인 끝을 사용할 때이 문자를 표시합니다. 즉, Vim이 파일 형식이 fileformat=unix
이지만 일부 줄에는 캐리지 리턴 ( CR
)이있는 것으로 간주하면 캐리지 리턴은 ^M
으로 표시됩니다.
LF
줄 끝이있는 한 줄과 CRLF
줄 끝이있는 줄이있는 파일은 MSDOS 기반 시스템에서 만든 파일을 잘못 편집하면 생성되는 경우가 많습니다. 예를 들어 MSDOS 운영 체제에서 파일을 만들어 UNIX 기반 시스템으로 복사 한 다음 UNIX 기반 운영 체제의 도구를 사용하여 해시 뱅 (예 : #!/bin/sh
)을 추가합니다.
DOS 텍스트 파일을 UNIX 텍스트 파일로 변환
아주 자주 DOS 나 Windows에서 편집 된 파일을 가지고 있으며 UNIX에서이 파일을보고 있습니다. vi로 파일을 볼 때 다음과 같이 보일 수 있습니다.
First line of file^M
Next Line^M
And another^M
^ M을 제거하려면 ^ M을 수동으로 삭제할 수 있습니다. 또는 Esc 를 누른 후 vi에서 명령 모드 프롬프트에 다음을 입력 할 수 있습니다.
:1,$s/^M//g
여기서 ^ M은 Ctrl 과 v를 함께 입력 한 다음 Ctrl 과 m을 함께 입력합니다.
이 명령은 첫 줄 '1'에서 마지막 줄 '$'까지 명령을 실행합니다. 명령은 '^ M'을 'nothing'으로 대체하고 전역 적으로 'g'로 대체합니다.
VIm의 fileformat 사용하기
Vim이 <CR><NL>
줄 끝 (MSDOS 기반 운영 체제에서 일반적으로 CRLF
라고도 함)이있는 파일을 열면 fileformat
을 dos
설정합니다. 다음과 함께 확인할 수 있습니다.
:set fileformat?
fileformat=dos
아니면 그냥
:set ff?
fileformat=dos
<NL>
줄 끝 ( LF
라고도하는 대부분의 UNIX 기반 운영 체제에서 일반적 임)으로 변환하려면 파일 fileformat
설정을 변경하면 Vim이 버퍼를 변경합니다.
:set ff=unix