본문 바로가기

블로그/운영체제

vi주요 단축키 및 명령어 정리.

1. 저장/ 종료

 단축키

설명 

 :w 

 현재 파일 저장

 :w

  file.txt 이름을 바꿔서 저장

 :q 

 vi 종료

 :q! 

 강제 종료

 :wq!  

 강제 저장 종료

 :e 

 현재 파일 다시 불러오기

 :e file.txt 

 다른 파일 불러오기


2. 커서의 이동동

단축키

설명 

h 

커서 왼쪽으로 

 j

커서 아래로

 k

커서 위로

 l

커서 오른쪽으로 

 엔터

다음 줄의 처음 

 w

다음 단어의 처음으로 

 e

다음 단어의 마지막으로 

b

다른 파일 불러오기 

^ 

그 줄의 맨 뒤로 

$ 

그 줄의 맨 앞으로 

H 

화면의 맨 앞으로

M 

화면의 중간으로 

 L

화면의 맨 아래로 


3. 화면의 이동

단축키 

설명 

^f 

다음 페이지 

^b 

이전 페이지 

^d 

화면 크기의 중간만큼 다음으로 이동 

G 

문서의 맨 끝 

숫자G 

해당 숫자 라인으로 이동 

 gg

문서의 맨 처음 

zz 

커서의 위치가 화면 중간이 됨 

ㅋ<엔터> 

커서의 위치가 화면 맨위가 됨 

:숫자 <엔터> 

해달 줄 번호로 이동 


4. 붙여넣기 및 레지스터 관련 

단축키 

설명 

p 

가장 최근의 레지스터 내용을 현재 커서의 뒤에 붙여넣기 

P

현재 커서의 앞에 붙여넣기 

 :reg

레지스터 전체의 내용을 봄 

 "[0-9]reg 

번호에 해당하는 레지스터의 내용을 붙여넣기 함 


5. 삭제/복사

단축키 

설명 

커서 뒤쪽 한 글자 삭제 

커서 앞쪽 한 글자 삭제 

dd 

한 줄 삭제 

커서 위치 이후의 한 줄 삭제 

gg 

문서의 맨 처음 

[숫자]dd 

숫자에 적힌 줄 수 만큼 삭제 

yy 또는 [숫자] yy 

숫자에 적힌 줄 수 만큼 레지스터에 복사 


6. 블록 지정

단축키 

설명 

V

블록을 만듬 

(ctrl) v

커서의 위치를 꼭지점으로 하는 블록 만듬

>

해당 블록 앞에 탭 삽입 

< 

탭 제거 


7.기타

1) J  두 줄을 합쳐서 하나의 줄로 만듬.

2) u  되돌리기.

3) (ctrl) + r  앞으로 가기.

4) /[문자열] ?[문자열]  문자열을 찾음

5) *  커서 위치의 단어 찾음음

6) 문자열바꾸기 = :[범위]ㄴ/[찾을문자열]/[바꿀문자열]/[행의범위]

 ex) :s/this/This/g 현재 행의 모든 thisThis로 바꾼다.

:%s/this/This/g #문서 내의 모든 thisThis로 바꾼다.

:%s/this/What/ #각 줄의 첫 this만 바꾼다.

Tip. V로 블록지정후 : 을 누르면 블록 내에서 바꾸기가 됩니다

7) :!<명령>  셸 명령을 실행

8) :%!<명령>  셸 명령을 실행, 결과를 현재 창에 표시

9) :vnew  세로 창 나누기

10) ^ww  창간 이동

11) :new  수평 분할

12   [숫자]^w<            수평/수직 창 크기 조절

[숫자]^w>

[숫자]^w_

[숫자]^wl (pipe)