Network/Linux

[Linux] vi 명령어 정리

꾹꾹이 2022. 9. 11.
728x90

1. vi 명령어란?

: Linux, Unix에서 사용하는 vi 편집기 명령어

 

 

2. vi 편집기 구조

vi 편집기는 명령 모드, 입력 모드, 마지막 행 모드로 구성되어있다.

 

i ) 명령 모드 (Command Mode) : vi를 시작할 경우 실행되는 모드. 방향키를 통해 커서를 이동할 수 있다. 입력 모드를 진입한 후 [ESC]를 누르면 명령 모드로 돌아온다.

 

ii ) 입력 모드 (Insert Mode) : 명령 모드 상태에서 i, a를 입력하여 입력 모드로 전환할 수 있다. 직접 글이나 코드를 작성할 수 있는 상태이다. 명령 모드로 돌아갈 땐 [ESC]를 누르면 된다.

   i : 커서가 현재 위치한 부분에서 시작

  a : 커서 바로 다음 부분에서 시작

 

iii ) 마지막 행 모드 : 명령 모드에서 :(콜론)을 입력하면 화면 맨 아랫줄에 입력할 수 있는 공간이 나온다. 내가 현재까지 작성한 내용을 저장하고 종료할지(wq), 저장하지 않고 종료할지(q, q!) 입력할 수 있다.

 

3. vi 명령어 모음

1. 입력 모드 명령어
명령어 기능
i 현재 커서의 위치부터 입력
I 현재 커서 줄의 맨 앞에서부터 입력
a 현재 커서의 다음 줄에 입력
A 현재 커서 줄의 맨 뒤에서부터 입력
o 현재 커서의 다음 줄에 입력
O 현재 커서의 이전 줄에 입력
s 현재 커서 위치에 한 글자를 지우고 입력
S 현재 커서의 한 줄을 지우고 입력

* 엔터를 치지 않아도 입력이 들어간다.

 

2. 명령 모드 명령어
명령어 기능
x 현재 커서가 위치한 문자 1개 삭제(5x: 문자 5개 삭제)
dw 커서가 위치한 곳에서부터 단어 삭제(커서가 위치한 곳부터 띄어쓰기 한 곳까지)
dd 커서가 위치한 곳의 한 줄 삭제(p로 복구 가능)
yy 커서가 위치한 곳의 한 줄 복사(5yy: 5줄 복사)
p 커서가 위치한 곳의 다음 줄에 내용 붙여넣기
dd 잘라내기 -> p 붙여넣기
P 커서가 위치한 곳의 이전 줄에 내용 붙여넣기
u 직전에 내린 명령 취소

 

3. 명령 모드에서 커서 이동 명령어
명형어 기능
h 커서에서 왼쪽으로 한 칸 이동
j 커서에서 아래로 한 칸 이동
k 커서에서 로 한 칸 이동
l 커서에서 오른쪽으로 한 칸 이동
gg 파일의 제일 첫 줄로 이동
G 파일의 제일 끝 줄로 이동(대문자로 입력해야함)
Ctrl + b 이전 화면으로 이동
Ctrl + f 다음 화면으로 이동

 

4. 마지막 행 모드(Last Line Mode) 명령어
명령어 기능
:w 현재 파일 명으로 저장
:q vi 편집기 종료(저장안됨)
:q! vi 편집기 강제 종료
:wq 저장 후 종료
:wq! 강제 저장 후 종료
:숫자 해당 숫자 라인으로 커서 이동
:e! 마지막 저장 이후 모든 편집 취소
/문자열 현재 커서에서부터 앞쪽으로 문자열 탐색
?문자열 현재 커서에서부터 뒷쪽으로 문자열 탐색
set nu 라인 번호 출력
set nonu 라인 번호 숨기기

* !가 붙으면 강제 수행

 

 

이외에도 명령어가 많다.

무조건 다 외우려 하지말고 본인이 작업할 때 자주 사용하는 명령어만 외워서 사용하자!

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

[Linux] tail 명령어 사용법(실시간 로그 보기)  (0) 2022.09.11

댓글