본문 바로가기
OS/Linux

[Linux] vi 편집기 단축키

by 노쿄 2023. 6. 15.

#. 파일 열 때

 

vi +/[커서 두고 싶은 문구] test.txt

→ 예시) vi +/return test.txt → 커서가 return에 가있는 상태로 txt파일이 열린다.

 


#. 글 입력

 

a 커서 위치의 다음 칸부터 끼워넣기
A 커서가 있는 줄의 끝에서부터 끼워넣기
i 커서 위치부터 끼워넣기
I 커서가 있는 줄의 맨 앞에서부터 끼워넣기
o 커서 바로 아래에 줄을 만들고 끼워넣기
O 커서 바로 위에 줄을 만들고 끼워넣기

 


#. 커서(칸, 줄 - 글자) 이동

 

h 한칸 왼쪽으로 이동
j 한줄 아래로 이동
k 한줄 위로 이동
l 한칸 오른쪽으로 이동

 


#. 커서(단어) 이동

 

w 다음 단어의 첫 글자로 이동
b 이전 단어의 첫 글자로 이동
W 다음 단어의 첫 글자로 이동 (단어 구분 방식 space)
B 이전 단어의 첫 글자로 이동 (단어 구분 방식 space)
e 단어의 마지막 글자로 이동 (단어 구분 방식 space)
E 단어의 마지막 글자로 이동 (단어 구분 방식 space)
+ 다음 줄의 첫 글자로 이동
- 윗줄의 첫 글자로 이동
nG 원하는 n번째 라인으로 이동

 


#. 커서(줄) 이동

 

0 그 줄의 맨 처음으로 이동 (공백 포함)
^ 그 줄의 첫 글자로 이동 (공백 미포함)
$ 그 줄의 마지막 글자로 이동

 


#. 커서(문장, 문단) 이동

 

( 이전 문장의 첫 글자로 이동 (문장 구분 . 혹은 ? 등 문장의 끝을 나타내는 기호) 
) 다음 문장의 첫 글자로 이동 (문장 구분 . 혹은 ? 등 문장의 끝을 나타내는 기호) 
{ 이전 문단으로 이동 (문단 구분 라인에 빈 칸)
} 다음 문단으로 이동 (문단 구분 라인에 빈 칸)

 


#. 페이지 이동

 

Ctrl + u 한 페이지 위
Ctrl + d 한 페이지 아래

 


#. 화면 단위 이동

 

Ctrl + y 커서는 움직이지 않고, 화면이 아래로 한 줄씩 이동
Ctrl + e 커서는 움직이지 않고, 화면이 위로 한 줄씩 이동
Ctrl + f 한 화면 아래로 이동
Ctrl + b 한 화면 위로 이동

 


#. 극단적 이동

 

gg 맨 위로 이동
G 맨 아래로 이동

 


#. 글 수정

 

r 커서 위치의 한 글자 교체
E 커서 위치부터 <ESC>를 누를때까지 다른 글자로 교체
s, cl 커서 위치의 글자 한개를 여러 글자로 교체
ch 커서 바로 앞의 글자 한개를 여러 글자로 교체 
cw 커서 위치의 한 단어를 교체
c0 커서 위치부터 줄의 처음까지 교체
C, c$ 커서 위치부터 줄의 끝까지 교체
cc 커서가 있는 줄을 교체
cj 커서가 있는 줄과 그 다음 줄을 교체
ck 커서가 있는 줄과 그 앞줄을 교체

 


#. 글 삭제

 

x, dl 커서 위치의 글자 삭제
X, dh 커서 바로 앞의 글자 삭제
dw 한 단어를 삭제
d0 커서 위치부터 줄의 처음까지 삭제
D, d$ 커서 위치부터 줄의 끝까지 삭제
dd 커서가 있는 줄을 삭제
dj 커서가 있는 줄과 그 다음 줄을 삭제
dk 커서가 있는 줄과 그 앞줄을 삭제

 


#. 부분(선택) 삭제

 

원하는 위치로 이동 후

ngg (현재 위치부터 n줄 삭제)

 

원하는 위치 이동 후

dG (현재 위치 이하 모두 삭제)


#. 전체 삭제

 

gg + dG

 


#. 복사 & 붙여넣기

 

yw 커서 위치부터 단어의 끝까지 복사
y0 커서 위치부터 줄의 처음까지 복사
y$ 커서 위치부터 줄의 끝까지 복사
yy 커서가 있는 줄을 복사
yj 커서가 있는 줄과 그 다음 줄을 복사
yk 커서가 있는 줄과 그 앞줄을 복사 
p 커서의 다음 위치에 붙여넣기
P 커서가 있는 위치에 붙여넣기

 


#. 부분(선택) 복사 & 붙여넣기

 

원하는 위치 이동 후

nyy (현재 위치부터 n줄 복사)

p

 

원하는 위치 이동 후

yG (현재 위치 이하 모두 복사)

p


#. 전체 복사 & 붙여넣기

 

gg + yG

p

 


#. 문자열 찾기

 

/[문자] 문자열 찾기
/\c[문] 대소문자 구분 없이 문자열 찾기

 


#. 주석 처리 & 주석 해제

 

여러 줄 주석 처리

 

visual mode(v) 진입

j, k로 범위 선택

:norm i# 입력

 

 

여러 줄 주석 해제

 

visual mode(v) 진입

j, k로 범위 선택

:norm 1x 입력 (문장의 첫 글자 삭제, 2x면 문자의 첫 두 글자 삭제)

 


#. 치환

 

예시

:1,$ s/artartart/white/g

치환 전/후


#. 기타

 

u 작업 취소
U 그 줄에 행해진 작업 모두 취소
Ctrl + r 작업 재실행 (취소를 취소)
. 조금 전에 했던 명령을 반복 
J 현재 줄과 아래 줄을 연결
~ 대문자를 소문자로, 소문자를 대문자로 바꿈
% 괄호의 반대쪽 짝으로 이동
Ctrl + l 현재 화면을 지우고 다시 그림
Ctrl + g 파일에 관한 정보를 표시

 



'OS > Linux' 카테고리의 다른 글

RHEL6 OHS 필수 패키지 설치  (0) 2026.04.03
사용자 계정 & 그룹 생성  (0) 2023.10.06
sed 명령어  (0) 2023.09.12