본문 바로가기
개발/기타

VI 편집기 필수 명령어.

by 레조 2024. 5. 12.

vi

 

입력 모드 (Insert Mode)

a : 커서 위치 다음에 추가 (append)

A : 커서가 있는 줄의 끝에서부터 추가 (append)

i : 커서가 있는 앞쪽에 끼워넣기 (insert)

I : 커서가 있는 줄의  앞쪽에 끼워넣기 (insert)

o : 커서가 있는 다음 줄에  줄을 만들고 추가 (append line)

O : 커서 위치 바로 위에 줄을 만들고 끼워넣기 (insert line)

 

라인 모드 (Line Mode)

콜론(:) : 라인 모드 진입 (shift + ;)

/ : 현재 위치에서 아래쪽으로 검색

? : 현재 위치에서 위쪽으로 검색

n : 검색하던 방향으로 계속 패턴 검색

N : 검색하던 반대 방향으로 계속 패턴 검색

 

명령 모드 (Command Mode) : ESC

 

커서 이동

h : 한 칸 왼쪽으로 이동

j : 한 줄 아래로 이동

k : 한 줄 위로 이동

l : 한 칸 오른쪽으로 이동

 

단어 이동

w : 다음 단어의  글자로 이동

b : 이전 단어의  글자로 이동

e : 단어의 마지막 글자로 이동

 

줄 이동

gg :  줄로 이동

G : 마지막 줄로 이동 (shift + g)

0 :  처음으로 이동

^ :  문장의 처음으로 이동

$ :  문장의 끝으로 이동

:set number : 줄 번호 표시

:set nonumber : 줄 번호 삭제

줄 번호, shift + g : 해당 줄로 커서 이동

 

화면 내 이동

H : 현재 화면의 첫 줄로 이동

M : 현재 화면의 가운데 줄로 이동

L : 현재 화면의 마지막 줄로 이동

 

페이지 이동

ctrl + f : 아래로 페이지 이동

ctrl + b : 위로 페이지 이동

ctrl + u : 위로 절반 페이지 이동

ctrl + d : 아래로 절반 페이지 이동

 

복사

yy : 현재 줄 복사

v : 블록 시작 (커서 이동)

y : 블록 복사

3y : 현재 줄에서 아래로 3 복사

d : 블록 잘라내기

p : 다음 줄에 붙여넣기

P : 이전 줄에 붙여넣기

 

:set paste

  붙여넣기에서 # 인덴트 자동 추가 기능 제거

:set nopaste

  # 인덴트 자동 추가 기능 복원

 

잘라내기(삭제)

x : 현재 커서 위치 문자 잘라내기(삭제)

5x : 커서 위치에서 5글자 잘라내기(삭제)

dd : 커서가 있는  잘라내기(삭제)

5dd : 커서 줄부터 아래로 5 잘라내기(삭제)

d + uparrow : 커서가 있는  + 이전 줄 잘라내기(삭제)

d + down arrow : 커서가 있는  + 다음 줄 잘라내기(삭제)

dj : 커서가 있는  + 다음 줄 잘라내기(삭제)

dk : 커서가 있는  + 이전 줄 잘라내기(삭제)

dw : 커서 위치부터  단어 잘라내기(삭제)

D : 커서 위치부터 줄의 끝까지 잘라내기(삭제)

 

되돌리기

u : 작업 되돌리기 (Undo)

U : 커서가 위치한 1줄만 되돌리기

ctrl+r : 작업 돌리기 (Redo)

 

작업 중 외부 명령 창으로 이동

ctrl+z : 작업 중 명령 창으로 이동
jobs : 복귀 가능한 잡들이 번호로 보인다. + 표시는 가장 최근 잡.
fg : 최신 + 표시 작업으로 복귀.
fg %n : %n 번호 작업으로 복귀한다.