VIM 명령어 정리
vi 실행
| 명령어 | 동작 |
| # vi file | file을 연다. |
| # vi file1 file2 | file1 과 file2 를 차례로 연다. |
| # view file | file을 읽기 모드로 연다. |
| # vi -R file | file을 읽기 모드로 연다. |
| # vi + file | file을 열때 커서가 file 본문의 마지막 행에 위치한다. |
| # vi +n file | file을 열어 n행에 위치한다. |
| # vi -r file | 손상된 파일 회복 |
입력모드 전환
| 명령어 | 동작 |
| # i | 커서 있는데서 입력모드 전환 |
| # I | 커서 왼쪽, 행의 처음에 몬자 삽입 |
| # a | 커서 있는 줄 끝에서 입력모드 전환 |
| # A | 커서 오른쪽, 행의 끝에 문자 삽입 |
| # o | 커서 있는 줄 아래에 빈 줄 삽입 |
| # O | 커서 있는 줄 위에 빈 줄을 삽입 |
| # R | 덮어쓰기 모드로 전환 |
커서 이동
| 명령어 | 동작 |
| # ^, 0 | 줄의 처음으로 이동 |
| # $ | 줄의 끝으로 이동 |
| # H | 화면 맨 위로 이동 |
| # M | 화면의 중간으로 이동 |
| # L | 화면 맨 아래로 이동 |
| # w | 다음 단어 끝으로 커서 이동 |
| # e | 다음 단어 앞으로 커서 이동 |
| # b | 이전 단어로 이동 |
| # shift + ↑ | 한 페이지 앞으로 이동 |
| # shift + ↓ | 한 페이지 뒤로 이동 |
| # 3l, 3G | 현재 커서 위치한 행에서 3번째 행으로 이동 |
| # ctrl + i | 한 화면 위로 이동 |
| # ctrl + b | 한 화면 아래로 이동 |
| # ctrl + d | 반 화면 위로 이동 |
| # ctrl + u | 반 화면 아래로 이동 |
| # ctrl + e | 한 줄씩 위로 이동 |
| # ctrl + y | 한 줄씩 아래로 이동 |
삭제
| 명령어 | 동작 |
| # x | 한 문자 삭제 |
| # 5x | 커서가 있는 위치부터 5개의 문자를 삭제 |
| # d + ↑ | 커서있는 줄, 윗줄 2줄 삭제 |
| # d + ↓ | 커서잇는 줄, 아래줄 2줄 삭제 |
| # dw | 한 단어 삭제 |
| # dd | 한 줄 삭제 |
| # 5dd | 커서가 있는 라인부터 5개의 라인 삭제 |
| # db | 커서의 위치에서 거꾸로 한 단어 삭제 |
| # D | 한줄 내에서 커서있는 뒤 모두 삭제 |
| # u | 바로 전에 수행한 명령을 취소 |
| # :5,10 d | 5~10번째 행 삭제 |
복사와 붙여넣기
| 명령어 | 동작 |
| # yy | 현재 줄을 버퍼로 복사 |
| # p | 버퍼에 있는 내용을 커서 뒤에 삽입 |
| # P | 버퍼에 있는 내용을 커서 앞에 삽입 |
| # 3y | 현재 줄에서부터 아래로 3줄 복사 |
| # :5, 10y | 5~10줄을 버퍼로 복사 |
| # :30pu | 30행에 버퍼 내용을 삽입 |
| # d | 현재 커서가 위치해 있는 단어 복사 |
| # 3yy | 현재 행을 기준으로 3번째 행까지 n행 복사 |
문자열 찾기
| 명령어 | 동작 |
| # /name | name 문자열 찾기 |
| # n | 다음 name으로 이동 |
| # N | n과 같으며 역방향으로 이동 |
문자열 대체
| 명령어 | 동작 |
| # :s/str/rep | 현재 행의 str을 rep로 대체 |
| # :l,.s/str/rep/ | 1부터 현재 행의 str을 rep로 대체 |
| # :%s/str/rep/g | 파일 전체 str을 rep로 전부 대체 |
| # :.$/aaa/bbb | 커서의 위치로부터 파일의 끝까지 있는 모든 aaa를 bbb로 대체 |
파일 저장 및 불러오기
| 명령어 | 동작 |
| # :w | 지정된 파일에 저장 |
| # :wq, :x, ZZ | 지정된 파일에 저장하고 vi를 종료 |
| # :w php.ini | php.ini 파일에 저장 |
| # :q | 저장하지 않고 종료 |
| # :q! | 저장하지 않고 강제 종료 |
| # :wq php.ini | php.ini에 저장하고 vi를 종료 |
| # :r php.ini | php.ini의 내용을 현재 커서가 있는데로 불러온다. |
| # :e php.ini | 현재의 화면을 지우고 새로운 파일 php.ini를 불러온다. |
| # :5,10 w php.ini | 5~10 줄까지의 내용을 php.ini에 저장 |
기타
| 명령어 | 동작 |
| # :set nu | 행 번호 보여주기 |
| # :set nonu | 행 번호 보여주기 취소 |
| # . | 바로 전에 실행한 명령어 재 실행 |
| # ctrl + l | 불필요한 화면 정리후 다시 표시 |
References
Linux 문서편집기 vi, vim 명령어 정리