[linux] vim에서 DOS 줄 끝을 Linux 줄 끝으로 변환
Windows에서 만든 파일을 열면 줄이 모두로 끝납니다 ^M
.
이 문자들을 한 번에 어떻게 삭제합니까?
답변
DOS2UNIX는 이 작업을 수행하는 명령 줄 유틸리티입니다, 또는 :%s/^M//g
당신이 사용하는 경우 Ctrl– v Ctrl– m입력 ^ M으로, 또는 당신은 할 수 :set ff=unix
와 정력이 당신을 위해 그것을 할 것입니다.
‘fileformat’설정에 대한 문서가 여기 있으며 vim wiki에는 줄 끝 변환에 대한 포괄적 인 페이지가 있습니다 .
또는 파일을 많이 앞뒤로 이동하는 경우 파일을 변환하지 않고 대신 할 수 :set ff=dos
있으므로 vim은 DOS 파일임을 알고 줄 끝에 DOS 규칙을 사용합니다.
답변
보기에서 줄 끝을 변경하십시오.
:e ++ff=dos
:e ++ff=mac
:e ++ff=unix
이것은 또한 저장 작업으로 사용될 수 있습니다 (: w 만 있으면 화면에 표시되는 줄 끝을 사용하여 저장하지 않습니다).
:w ++ff=dos
:w ++ff=mac
:w ++ff=unix
그리고 명령 행에서 사용할 수 있습니다 :
for file in *.cpp
do
vi +':w ++ff=unix' +':q' "$file"
done
답변
나는 일반적으로 사용
:%s/\r/\r/g
조금 이상해 보이지만 vim이 줄 바꿈과 일치하는 방식으로 작동합니다. 나는 또한 기억하기가 더 쉽다는 것을 안다 🙂
답변
다음 명령을 사용하는 것이 좋습니다.
:set fileformat=unix
mac
또는 dos
파일을 각각 Macintosh 또는 MS-DOS / MS-Windows 파일 규칙으로 변환 할 수도 있습니다 . 파일이 이미 올바른 형식이면 아무 것도 수행하지 않습니다.
자세한 내용은 vim help를 참조하십시오.
:help fileformat
답변
:set fileformat=unix
dos에서 unix로 변환합니다.
답변
:%s/\r+//g
Vim에서는 모든 캐리지 리턴을 제거하고 줄 바꿈 만 남겨 둡니다.