VIM 기본 사용법

리눅스에서 기본 텍스트 편집기인 VIM의 기본 사용법에 대해 알아보겠습니다. 이 글은 VIM 텍스트 튜토리얼인 vimtutor를 바탕으로 작성되었습니다. CentOS에서 vimtutor을 이용하여 연습 할려면 아래 명령을 입력하시면 됩니다.

yum install vim-enhanced
vimtutor

커서 이동

k위로 한칸 이동. 3k와 같이 숫자를 붙여 여러 글자 이동합니다.
j아래로 한칸 이동. 3j와 같이 숫자를 붙여 여러 글자 이동합니다.
h왼쪽으로 한칸 이동. 3h와 같이 숫자를 붙여 여러 글자 이동합니다.
l오른쪽으로 한칸 이동. 3l과 같이 숫자를 붙여 여러 글자 이동합니다.
w다음 단어로 이동. 3w와 같이 숫자를 붙여 여러 단어 이동합니다.
b단어 처음으로 이동. 3b와 같이 숫자를 붙여 여러 단어 이동합니다.
e단어 끝으로 이동. 3e와 같이 숫자를 붙여 여러 단어 이동합니다.
0줄 맨 앞으로 이동합니다.
^공백을 제외한 줄 맨 앞으로 이동합니다.
$줄 맨 뒤로 이동합니다.
gg문서 시작으로 이동합니다.
G문서 끝으로 이동. 123G와 같이 줄번호를 붙여 원하는 줄 위치로 이동합니다.
Ctrl+G현재 커서 위치 보여줍니다.
Ctrl+F다음 페이지로 이동합니다.
Ctrl+B이전 페이지로 이동합니다.

삽입 모드

i현재 커서 위치에서 삽입 모드로 전환합니다.
I현재 줄 맨 앞에서 삽입 모드로 전환합니다.
a현재 커서 한칸 뒤에서 삽입 모드로 전환합니다.
A현재 줄 맨 뒤에서 삽입 모드로 전환합니다.
o현재 줄 아래에 한칸 삽입하고 삽입 모드로 전환합니다.
O현재 줄 위에 한칸 삽입하고 삽입 모드로 전환합니다.

치환 모드

R치환 모드로 전환합니다.
r한 글자만 치환합니다.

비주얼 모드

비주얼 모드는 텍스트에 블록을 설정하여 각종 편집을 하는 모드입니다.

v비주얼 모드로 전환합니다.

비주얼 모드에서 사용 할 수 있는 명령

d선택 영역을 삭제합니다.
y선택 영역을 복사합니다.
:w [FileName]선택 영역을 [FileName]으로 저장합니다.

삭제

x한 글자 삭제. 3x와 같이 숫자를 붙여 여러 글자 삭제합니다.
d[Motion][Motion]에 커서 이동 명령을 함께 사용하여 글자 삭제. d2w는 두 단어 삭제. d$는 현재 커서에서 문장 끝까지 삭제합니다.
dd한줄 삭제. 3dd와 같이 숫자를 붙여 여러줄 삭제합니다.

복사

y[Motion][Motion]에 커서 이동 명령을 함께 사용하여 글자를 복사. y2w는 두 단어 복사. y$는 현재 커서에서 문장 끝까지 복사합니다.
yy한 줄 복사. 3yy와 같이 숫자를 붙여 여러줄 복사합니다.

붙여넣기

p현재 커서 아래쪽에 붙여 넣기 또는 현재 커서 글자 뒤에 붙여 넣기합니다.
P현재 커서 윗쪽에 붙여 넣기 또는 현재 커서 글자 앞에 붙여 넣기합니다.

수정

c[Motion][Motion]에 커서 이동 명령을 함께 사용하여 글자 삭제 후 삽입 모드로 전환. c2w는 두 단어 삭제 후 삽입 모드 전환. c$는 현재 커서에서 문장 끝까지 삭제 후 삽입 모드로 전환합니다.
cc한 삭제 후 삽입 모드로 전환. 3cc와 같이 숫자를 붙여 여러줄 삭제 후 삽입 모드로 전환합니다.

실행 취소

u실행 취소합니다.
U현재 줄에서 변경 된 내용 모두 취소합니다.
Ctrl+R실행 취소를 취소합니다 (Redo).

검색과 치환

%현재 커서가 위치의 괄호와 매칭되는 괄호로 이동합니다.
/[SearchString][SearchString]을 현재 커서에서 문서 끝으로 검색합니다.
?[SearchString][SearchString]을 현재 커서에서 문서 처음으로 검색합니다.
n다음 문자열을 검색합니다.
N이전 문자열을 검색합니다.
:s/[old]/[new]첫번째 [old]를 [new]로 치환합니다.
:s/[old]/[new]/g현재 줄에 있는 [old] 전체를 [new]로 치환합니다.
:#,#s/[old]/[new]/g줄번호 # 사이에 있는 [old] 전체를 [new]로 치환합니다.
:%s/[old]/[new]/g문서내에 있는 [old] 전체를 [new]로 치환합니다.
:%s/[old]/[new]/gc문서내에 있는 [old] 전체를 [new]로 치환합니다. 치환 전 확인 메세지가 나옵니다.

VIM 종료

:qw저장 후 종료합니다.
:q!저장하지 않고 종료합니다.

시스템 명령 실행

:![SystemCommand][SystemCommand]를 실행하고 그 결과를 보여 줍니다.

문서 저장과 불러오기

:w현재 문서를 저장합니다.
:w [NewFileName][NewFileName]으로 현재 문서를 저장합니다.
:w >> [FileName][FileName]에 현재 문서 추가합니다.
:e [FileName][FileName]을 열어줍니다.
:e! [FileName]현재 수정 된 사항을 무시하고 새 파일을 열어줍니다.
:r [NewFileName][NewFileName]을 불러와서 현재 위치에 삽입합니다.

탭으로 파일 열기

:tabe [FileName]탭으로 [FileName] 열어줍니다.
gt다음 탭으로 이동. 3gt와 같이 숫자를 붙여 3번째 탭 위치로 이동합니다.
gT이전 탭으로 이동합니다.

관련글