CS/Linux

[Linux] vi 명령어 정리

멍쟈뽀쨕 2025. 3. 11. 19:51

vi 편집기의 모드(command, Edit, LastLine 모드)

동작 명령어
vi 시작 vi [경로]
명령 모드 esc
편집 모드 i, a, o
vi 종료  :wq(w저장 q종료)
Last Line 모드 :

Command 모드(esc)

  • 커서이동
    • 방향키
동작  명령어
G 가장 마지막 줄로 이동
gg 첫번째 즐로 이동
[n]G n번째 줄로 이동
$ 커서가 위치한 줄의 맨 끝으로 이동
0 커서가 위치한 줄의 맨 앞으로 이동
w 커서가 한 단어씩 오른쪽으로 이동
b 커서가 한 단어씩 왼쪽으로 이동

 

(2) 삭제

명령어 동작
x 한 문자 삭제, 또는 Edit모드에서 백 스페이스나 Delete 키로 삭제
dd 커서가 위치한 한 줄을 삭제 
d[커서 이동] 커서 이동하는 만큼 삭제

 

(3) 수정

명령어  동작
r 커서가 위치한 부분의 문자 하나를 입력하는 문자로 대체
u Ctrl + z 처럼 작업 취소(매우 유용)

 

(4) 복사 및 붙여넣기

명령어  동작
yy  커서가 위치한 한 줄을 복사
y[커서 이동] 커서 이동하는 만큼 복사
p  커서 밑이나 커서 다음에 붙여넣기

Edit 모드

  • 실질적으로 문서를 편집하는 모드
  • 내용을 입력, 내용을 수정, 내용을 삭제
    • 입력하고 싶은 내용을 입력하거나 백스페이스로 삭제

Last Line 모드

(1) 편집기 상태 변경

명령어  동작
set nu 라인 넘버 표시
set nonu 라인 넘버 표시 안함
set ic 검색할 때 대소문자 무시
set noic 검색할 때 대소문자 구분

 

(2) 검색 및 변환

명령어  동작
/[내용] 검색
n 다음 검색
N 이전 검색
:%s/[찾을 내용]/[바꿀 내용]/g  

 

(3) 저장 및 종료

명령어  동작
:w 저장
:q 종료
:wq 저장 및 종료
:w! 강제로 저장
:q! 강제로 종료
:wq!  저장 및 강제 종료