개발 등/LINUX

vi 명령어 정리

darkhorizon 2023. 3. 12. 20:28
728x90
반응형

1. vi 명령어 구조

    - 명령모드 (command mode): vi 명령어로 편집기가 시작되었을 때나 다른 모드애서  ESC 를 눌렀을 때의 모드

    - 입력모드 (insert mode): 명령모드에서 입력에 해당하는 명령어(i, a, o) 등을 입력해서 글을 작성할 수 있는 모드

    - 마지막행 모드 (last line mode): 명령모드에서 콜론(:)을 입력하면 편집기 마지막 라인에 명령어를 입력할 수 있는 모드.

       이 모드에서는 저장, 종료, 편집 환경 지정(라인번호 보여주기, syntax 모드 변경 등) 등을 할 수 있다.

 

2. 명령모드의 명령어

명령어 설명
i 현재 커서 위치에 글 삽입
a 현재 커서 바로 다음 위치에 글 삽입
o 다음 줄에 글 삽입 (알파벳 소문자)
[ 글자수]x 커서가 위치한 곳의 글자를 지정한 숫자만큼 삭제 (글자수를 생략하면 1자)
dw 커서가 위치한 곳의 글자 삭제
[글자수]dd 커서가 위치한 라인을 지정한 숫자만큼 삭제 (p 명령어 복구 가능,  글자수를 생략하면 1라인)
u 실행 명령 취소 (undo).  ctrl +z 와 동일
 yy 현재 줄을 버퍼에 복
p 버퍼의 내용을 현재 커서 아래줄에 붙여넣기.
k 현재 커서의 윗 라인으로 이동
j 현재 커서의 아래 라인으로 이동
l 현재 커서의 오른쪽 라인으로 이동
h 현재 커서의 왼쪽 라인으로
0 현재 커서의 맨 앞으로 이동 (숫자 0)
$ 현재 커서의 맨 끝으로 이동
( 현재 문장의 처음으로 이동
) 현재 문장의 끝으로 이동
{ 현재 문단의 처음으로 이동
} 현재 문단의 끝으로 이동
gg 문서 맨 앞으로 이동
G 문서 맨 아래로 이동

 

3. 마지막 행 모드 명령어

명령어 설명
w [파일명] 파일명으로 저장. 파일명을 생략하면 편집기를 열 때 사용한 이름으로 저장 (편집 화면은 그대로임)
q 편집기 종료
q! 편집기 강제 종료
wq 저장 후 편집기 종료
wq! 강제 저장 후 편집기 종료
f  파일명 파일명으로 이름 변경
숫자 해당 라인으로 이동
/문자열 현재 커서 위치에서 앞쪽으로 문자열 탐색. n으로 다음 문자열 탐색
?문자열 현재 커서 위치에서 뒤쪽으로 문자열 탐색
set nu 편집기 라인 번호 출력
syntax on/off 편집기의 하일라이트 기능 켬/끔
728x90