VIM에서 이스케이프 슬래시를 사용하지 않고 경로를 슬래시로 바꾸십시오. 다른 경로로 대체하고

vim 에서 텍스트 파일 의 긴 경로 /a/b/f/g/d/g를 다른 경로로 대체하고 싶습니다 /s/g/w/d/g/r. 일반적으로 사용 \/하지만 여기에 슬래시가 너무 많습니다. 더 쉬운 방법이 있습니까?



답변

/대체 명령의 분리 문자로 슬래시 대신 다른 문자를 사용할 수 있습니다 .

사용 예 #:

:%s#/a/b/f/g/d/g#/s/g/w/d/g/r#


답변

아마도 sed를 사용할 수 있습니다

예 1 – 나오지 @구분 : 대체 /opt/omni/lbin/opt/tools/bin

가있는 경로 이름을 바꾸면 대신 구분 기호로 /사용할 수 있습니다 . 아래의 sed 예제에서 입력 파일의 마지막 줄에서 로 변경되었습니다 .@//opt/omni/lbin/opt/tools/bin

$ sed 's@/opt/omni/lbin@/opt/tools/bin@g' path.txt /usr/kbos/bin:/usr/local/bin:/usr/jbin/:/usr/bin:/usr/sas/bin /usr/local/sbin:/sbin:/bin/:/usr/sbin:/usr/bin:/opt/omni/bin: /opt/tools/bin:/opt/omni/sbin:/root/bin

보낸 사람 : http://www.thegeekstuff.com/2009/10/unix-sed-tutorial-advanced-sed-substitution-examples/


답변