문자열 찾기(Find)
* 현재 문서를 편집중이라면, 키보드의 Esc 키를 눌러 편집모드에서 빠져나옵니다.
* 키보드의 슬래쉬(/)키를 누르고, 찾을 문자열을 입력합니다. 만약 foo 라는 문자열을 찾는다면
이렇게 하면 됩니다.
그런데 /키는, 위에서 아래로 찾는 것입니다.
아래에서 위쪽 방향으로 찾으려면 물음표(?)키를 사용합니다. 현재 커서 위치의 위쪽에 있는 foo 라는 문자열을 찾으려면
라고 하면 됩니다.
다음 문자열(문자) 계속 찾기
다음 문자열 찾기는 소문자 n 입니다. 만약 foo 가 여러 개 있다면, 아래쪽 foo들을 계속 찾게 하는 것입니다.
역방향으로 계속 찾으려면 대문자 N 을 누릅니다.
※ 엔터키를 눌러서 일반모드로 나온 후 n을 눌러야 합니다. 찾을 문자열 뒤에 그냥 n을 붙이면 안 됩니다.
후추나님의 코멘트를 보고 나서야, 여기에 대한 설명이 부족했다는 것을 알았습니다.^^;
대소문자 구분 없이 찾기
Vim은 대소문자를 구분하여 찾기에 불편합니다. Vim 설정 파일인 .vimrc또는 _vimrc 파일에,
set ignorecase
이런 줄을 삽입하면 대소문자 구분 없이 찾기를 할 수 있습니다. (▶▶ [.vimrc] Vim / Gvim 설정 파일 예제 - 리눅스 텍스트 에디터 참고)
문자열 바꾸기(치환)
* 현재 문서를 편집중이라면, 키보드의 Esc 키를 눌러 편집모드에서 빠져나옵니다.
* 콜론(:)을 누르고 %s/foo/bar 라고 하면 모든 foo라는 문자열이 bar로 한꺼번에 치환됩니다.
다음과 같이 c 라는 옵션을 붙이면
바꿀 때마다 바꾸어도 좋은지 물어보기에 더 안전합니다. y를 누르면 바꾸고, n을 누르면 다음으로 건너뛰고, a를 누르면 모두 바꿉니다.
이렇게 하면 정확하게 foo에 일치될 때만 바꿉니다. 즉 foo는 바꾸지만, foo 앞뒤로 다른 문자열이 붙어 있는 경우, 예를 들어
fooZZZ
ZZZfoo
ZZZfooZZZ
이런 문자열 속의 foo 는 바꾸지 않습니다.
대소문자 구분없이 바꾸려면
이렇게 i 옵션을 붙입니다. 이것은 ".vimrc" 파일을 고치지 않아도 작동합니다.
전역 치환
이 경우
foofoofoofoofoofoofoofoo
이렇게
barfoofoofoofoofoofoofoo
문장의 첫번째 foo만 bar로 치환됩니다. 문장의 모든 foo를 bar로 치환하려면
이렇게 g 옵션을 사용합니다.
이렇게 여러 옵션을 혼용할 수도 있습니다.
'Linux' 카테고리의 다른 글
쉘스크립트 숫자반복 (0) | 2014.12.30 |
---|---|
Xen Server에서 Ubuntu 설치시 "Unable to access a required file in the specified repository" 에러 해결 (0) | 2014.10.25 |
Mysql 컴파일 설치 절차(리눅스에서) (0) | 2014.06.16 |
sed awk 사용법 (0) | 2014.06.01 |
Linux process explorer (0) | 2014.05.07 |