vi 에서 특정 라인의 문자열을 변경 할 수도 있고
전체의 문자열을 변경 시킬 수도 있다.
특정 라인의 변경은
:5s/aaaa/bbbb/g
는 5번째 라인의 aaaa 라는 단어를 bbbb로 바꾸세요 라는 뜻이다.
특정 영역을 바꾸고자 하면
:1,5s/aaaa/bbbb/g
1~5번째 줄의 aaaa라는 단어를 bbbb로 바꾸세요 라는 뜻이고
글 전체 변경은
:1,%s/aaaa/bbbb/g
는 1~글 마지막까지 aaaa 를 bbbb 로 바꿔주세요 라는 뜻이다.
이걸 바꿔서
:%s/aaaa/bbbb/g 라고 할 수도 있다.
/g 를 안넣어주면 각 라인의 첫번째 단어만 바꾸어 준다.
근데 문제는 문자열 중에 / 가 들어가면 어떻게 해야 할까?
s 다음에 구분자를 넣어주는 건데
:5s/aa/aa/bb/bb/g
를
:5s#aa/aa#bb/bb#g
로 고쳐주면 구분자가 # 이 되므로 무리 없이 단어를 바꾸어 줄 수 있다.
'Linux Unix' 카테고리의 다른 글
[ Linux ] libtool 설치 ( install ) (0) | 2015.10.11 |
---|---|
[ Linux ] 자주 쓰는 grep 사용법 (0) | 2014.07.10 |
[ Linux ] WARNING: UNPROTECTED PRIVATE KEY FILE 문제 해결 (0) | 2013.11.22 |
[ Ubuntu ] 첫 root 패스워드 설정 (0) | 2013.11.03 |
[ Linux ] sort 사용법 (0) | 2013.09.16 |
댓글