본문 바로가기

programming

vi / vim 유용한 명령어 및 단축키 정리

vi / vim 유용한 명령어 및 단축키 정리

vi는 리눅스 기본 텍스트 편집기이며, vim은 vi의 기능을 확장한 버전이다. 아래는 모드 전환, 파일 조작, 복사·붙여넣기, 탐색, 검색 및 치환 등 주요 기능을 단축키 중심으로 정리한 내용이다.


# alias vi = vim

1. 모드 전환

명령어 설명

i 현재 커서 앞에서 입력 모드로 전환
I 현재 줄의 맨 앞에서 입력 시작
a 현재 커서 뒤에서 입력 시작
A 현재 줄의 끝에서 입력 시작
o 아래 새 줄 생성 후 입력 모드
O 위에 새 줄 생성 후 입력 모드
Esc 명령 모드로 전환

2. 저장 및 종료

명령어 설명

:w 저장
:q 종료
:wq 또는 ZZ 저장 후 종료
:q! 저장하지 않고 강제 종료
:w filename 다른 이름으로 저장

3. 이동 및 탐색

명령어 설명

h, j, k, l 왼쪽, 아래, 위, 오른쪽 이동
0 현재 줄의 맨 앞으로 이동
^ 현재 줄의 첫 문자로 이동
$ 현재 줄의 끝으로 이동
gg 문서의 맨 위로 이동
G 문서의 맨 아래로 이동
:n n번째 줄로 이동 (:10 → 10번째 줄)
Ctrl + d 아래로 반 페이지 이동
Ctrl + u 위로 반 페이지 이동
w, b 다음 단어, 이전 단어로 이동

4. 복사, 잘라내기, 붙여넣기

명령어 설명

yy 또는 Y 현재 줄 복사
p 복사한 내용을 현재 커서 아래에 붙여넣기
P 복사한 내용을 현재 커서 위에 붙여넣기
dd 현재 줄 잘라내기
d3d 아래 포함하여 3줄 삭제
x 현재 커서 위치 문자 삭제
u 이전 작업 취소 (undo)
Ctrl + r undo 복원 (redo)

5. 검색 및 치환

명령어 설명

   
/단어 아래 방향으로 단어 검색
?단어 위 방향으로 단어 검색
n 같은 방향으로 다음 검색 결과로 이동
N 반대 방향으로 이동
:%s/old/new/g 문서 전체에서 old → new 치환
:%s/^/#/ 문자열의 처음을 찾아 # 추가하기
:%s/$/./ 문자열의 끝을 찾아 . 추가하기
:10,20s/old/new/g 10~20줄에서 치환
:s/old/new/ 현재 줄에서 첫 번째만 치환

6. 화면 제어

명령어 설명

Ctrl + l 화면 다시 그리기 (화면 깨졌을 때 유용)
:set nu (:set number) 줄 번호 표시
:set nonu (:set nonumber) 줄 번호 숨기기
:syntax on 구문 강조 켜기
:syntax off 구문 강조 끄기

7. 복수 파일 편집 (vim)

명령어 설명

:e 파일명 새 파일 열기
:vsp 파일명 수직 분할로 파일 열기
:sp 파일명 수평 분할로 파일 열기
Ctrl + w w 창 전환
:bn / :bp 다음 / 이전 버퍼로 이동
:ls 열려 있는 버퍼 목록 보기

 

'programming' 카테고리의 다른 글

Perl to Python  (0) 2023.07.12
json load/loads/dump/dumps 함수  (0) 2021.11.23