다음 내용이 포함된 텍스트 파일이 있습니다.
elephant
rhino
giraffe
/* animals who live in Africa */
#
각 동물의 끝에 문자를 추가하고 싶습니다 . vim을 사용하면 이 작업을 수행 할 수 있습니다 :%s/\n\n/#\r\r/g
. 그러나 처음에 이것을 시도했는데 :%s/\n\n/#\n\n/g
결과는 다음과 같습니다.
elephant#^@^@rhino#^@^@giraffe#^@^@/* animals who live in Africa */
vim은 왜 이렇게 행동합니까? \n
vim에서는 어떻게 이해하나요?
답변1
vim 교체의 교체 측면에서 개행 문자는 로 표시됩니다 \r
. 그러니 시도해 보세요:
%s/\n\n/#\r\r/g
생성된 파일은 다음과 같습니다.
elephant#
rhino#
giraffe#
/* animals who live in Africa */
대체 명령의 전반부에는 줄 바꿈 및 캐리지 리턴 문자가 \n
있습니다 . \r
대조적으로 명령의 대체 측면에는 NUL 문자(16진수 00)와 개행 문자가 \n
있습니다 .\r