Sky Archive

Linux

[Linux] vi/vim 편집기 유용한 단축키 정리(복사 및 이동, 검색)

Anchovy ʕ-᷅ᴥ-᷄ʔ 2021. 8. 4. 09:42

 

 

안녕하세요🐱‍🐉

vi/vim 편집기 명령어 단축키입니다. 주로 리눅스에서 많이 사용하시죠?

실무에서 자주 사용하시면 출력하여 자주 보며 손에 익혀보는 건 어떨까요?༼ つ ◕_◕ ༽つ

 

이동

- 기본 이동

h, j, k, l : 좌, 하, 상, 우 이동
-  : 줄의 처음 위치로 이동
gg  : 맨 위로 이동
shift + g  : 맨 아래로 이동


- 단어 단위로 이동

[n] + w : n번째 단어로 이동
e : 단어의 마지막 위치로 이동
b : 단어의 시작 위치로 이동
ge : 단어의 마지막 위치로 이동


- 한 문장 내 이동

0 : 라인 맨 앞으로 이동
^ : 문장 맨 앞으로 이동
$ : 문장 맨 뒤로 이동


- 현재 보이는 페이지 내 이동

shift + h : 현재 보이는 페이지를 기준으로 맨 위로 이동
shift + m : 현재 보이는 페이지를 기준으로 중간 라인으로 이동
shift + l : 현재 보이는 페이지를 기준으로 맨 아래로 이동


- 페이지 이동

ctrl + f : 다음 페이지의 첫 줄로 이동
ctrl + b : 다음 페이지의 마지막 줄로 이동
ctrl + d : 페이지의 절반 크기만큼 아래로 이동
ctrl + u : 페이지의 절반 크기만큼 위로 이동


- 원하는 줄 번호로 한 번에 이동

줄 번호 설정을 해야 가능
줄 번호 설정 :

1. esc를 눌러 표준 모드로 진입

2. :set nu(number) 입력

- 해제 :set nonu(nonumber)

 

이동 방법 1.
1. esc를 눌러 표준 모드로 진입
2. : 를 누른 후 원하는 줄 번호 입력


이동 방법 2.
1. esc를 눌러 표준 모드로 진입
2. 원하는 줄 번호 입력
3. shift + g 입력 (맨 아래로 이동)


- {}(컬리 블레이스, Curly Brace)를 기준으로 이동

]] : {로 이동 (커서 기준 다음)
- 없으면 페이지의 맨 아래로 이동
- {은 가장 상위의 블록을 감싸고 있는 문자만 찾는다.
[[ : {로 이동 (커서 기준 이전)
][ : }로 이동 (커서 기준 다음) 
- 없으면 페이지의 맨 위로 이동
- }은 가장 상위의 블록을 감싸고 있는 문자만 찾는다.
[] : }로 이동 (커서 기준 이전) 
% : {}나 ()에서 현재 괄호의 짝으로 이동


편집

- 삽입

i : 현재 커서가 위치한 문자의 앞에 삽입
I : 현재 커서가 위치한 줄 맨 앞에 삽입
a : 현재 커서가 위치한 문자의 뒤에 삽입
A : 현재 커서가 위치한 줄 맨 뒤에 삽입
o : 현재 커서가 위치한 줄 바로 아랫줄에 삽입

O : 현재 커서가 위치한 줄 바로 윗줄에 삽입 


- 삭제 및 수정 관련 단축키

dd : 커서가 위치한 줄 잘라내기

- 3dd : 커서가 위치한 줄부터 3줄 잘라내기 
dw : 커서가 위치한 곳부터 단어의 마지막까지 잘라내기
shift + d : 현재 커서의 위치부터 줄의 끝까지 잘라내기
x : 커서가 위치한 문자 잘라내기
shift + x : 커서가 위치한 문자 바로 앞에 있는 문자 잘라내기
s : 커서가 위치한 문자 잘라내고 삽입
cc 또는 shift + s : 커서가 위치한 줄 전체 잘라내고 삽입
cw : 커서가 위치한 곳부터 단어의 마지막까지 잘라내고 삽입
shift + c : 현재 커서의 위치부터 줄의 끝까지 잘라내고 삽입
r + 변경할 문자 : 커서가 위치한 문자 하나 수정
- ex) 4rx : 현재 이후 4개의 글자를 x로 수정

 

- 복사/붙여 넣기

yl : 현재 커서가 위치한 문자 하나만 복사하기
- ex) 3yl : 현재 이후 3개의 문자를 복사
yy : 현재 커서가 위치한 줄 복사하기
yw : 현재 커서의 위치부터 단어가 끝나는 위치까지 복사하기
y : 블록 단위로 체크한 내용(비주얼 모드 이용) 복사하기 - 한 문자만 복사 X
- ex) 3y : 커서가 위치한 줄부터 3만큼의 줄 복사하기
p : (단어 또는 행) 현재 커서가 위치한 다음 위치에 붙여 넣기 
shift + p : (단어 또는 행) 현재 커서가 위치한 앞 위치에 붙여 넣기
- 3p : 3만큼 붙여 넣기를 반복

 

- 다음 줄을 현재 커서가 있는 줄의 끝으로 이어 붙이기

shift + j : 다음 줄을 현재 커서가 있는 줄의 끝으로 이어 붙인다.


검색

- 검색

/ + 찾을 단어 + Enter : 문서에서 단어 찾기
n 또는 * : 다음 찾기
N 또는 # : 이전 찾기


기타

- 취소하기/되돌리기 및 들여 쓰기/내어 쓰기

 

취소하기/되돌리기 및 들여 쓰기/내어 쓰기
u : Undo, 이전으로 취소하기
ctrl + r : Redo, 취소한 것을 다시 되돌리기
>> : 들여 쓰기

- ex) 2>> : 2번 들여 쓰기
>} : 한 문단 전체를 들여 쓰기
<< : 내어 쓰기
. : - 이전 명령어를 다시 실행

 

- 대소문자 변환

shift + ~ : 현재 커서가 위치한 문자의 대소문자를 변경

 

- 숫자 증감

ctrl + a : (현재 커서 위치의 숫자) 숫자 증가
ctrl + x : (현재 커서 위치의 숫자) 숫자 감소

 

 

 

 

 

 

ref. https://vim.rtorr.com/lang/ko

https://gmlwjd9405.github.io/2019/05/14/vim-shortkey.html