1. vi 편집기 구조
▶ 명령 모드 (Command Mode)
▶ 입력 모드 (Insert Mode)
▶ 마지막 행 모드 (Last Line Mode) = 콜론 모드, EX 모드
입력 모드 | ESC --> <-- i, a, o, I, A, O |
명령 모드 | : (콜론) --> <-- ESC OR ENTER |
EX 모드 |
2. vi 편집기 명령어
▶ 저장 및 종료
명령 | 설명 | |||
:q | vi 편집기 종료 | |||
:q! | 작업 내용 저장 X, 강제 종료 | |||
:w [파일명] | 작업 내용 저장, 파일명 지정시 새 파일로 저장 | |||
:wq | 작업 내용 저장, vi 편집기 종료 | |||
:wq! | 작업 내용 저장, vi 편집기 강제 종료 | |||
:f [파일명] | 파일 이름을 [파일명]으로 변경 |
▶ 입력 모드 전환
명령 | 설명 | |||
i | 현재 커서 앞에 입력 | |||
a | 현재 커서 뒤에 입력 | |||
o | 커서 위치의 다음 행에 입력 | |||
I (대문자 i) | 커서 위치 행의 처음으로 이동하여 입력 | |||
A | 커서 위치 행의 끝으로 이동하여 입력 | |||
O | 커서 위치 행의 이전 행에 입력 |
▶ 커서 이동
명령 | 설명 |
h | 커서를 위로 이동 |
j | 커서를 아래로 이동 |
k | 커서를 왼쪽으로 이동 |
l | 커서를 오른쪽으로 이동 |
0 (숫자 0) | 커서를 현재 행의 처음으로 이동 |
$ (Ctrl + 4) | 커서를 현저 행의 마지막으로 이동 |
H | 커서를 화면의 첫 행으로 이동 |
M | 커서를 화면의 중간 행으로 이동 |
L | 커서를 화면의 마지막 행으로 이동 |
w | 커서를 다음 단어의 첫 글자로 이동 |
b | 커서를 앞 단어의 첫 글자로 이동 |
e | 커서를 다음 단어의 마지막 글자로 이동 |
G | 커서를 파일의 마지막 행으로 이동 |
:행번호 | 커서를 지정한 행 번호로 이동 |
▶ 화면 이동
명령 | 설명 |
Ctrl + u | 화면의 절반 만큼 위로 이동 |
Ctrl + d | 화면의 절반 만틈 아래로 이동 |
Ctrl + b / Page Up | 한화면 위로 이동 |
Ctrl + f / Page Down | 한화면 아래로 이동 |
Ctrl + y | 화면을 한 행 위로 이동 |
Ctrl + e | 화면을 한 행 아래로 이동 |
▶ 수정
명령 | 설명 |
r | 커서가 위치한 글자를 다른 글자로 수정 |
cw | 커서 위치에서부터 현재 단어의 끝까지 수정 |
글자 수 + cw | 커서 위치로부터 지정한 숫자의 단어만큼 수정 |
cc | 커서가 위치한 행의 내용을 모두 수정 |
C | 커서 위치에서 행의 끝까지 수정 |
yy | 커서가 위치한 행 복사 |
행 수 + yy | 커서 위치에서 행 수 만큼 복사 |
dd | 커서가 위치한 행 잘라내기 |
행 수 + dd | 커서 위치에서 행 수 만틈 잘라내기 |
p | 커서가 위치한 행의 아래쪽에 붙여넣기 |
P | 커서가 위치한 행의 위쪽에 붙여넣기 |
:s/문자열/문자열 | 커서가 위치한 행에서 첫 번째로 나오는 대상문자열을 바꿀 문자열로 바꿈 |
:%s/문자열/문자열 | 파일 전체에서 모든 대상 문자열을 바꿀 문자열로 바꿈 |
:범위s/문자열/문자열 | 범위 내 모든 각 행에서 첫 번째로 나오는 대상 문자열을 바꿀 문자열로 바꿈 |
:범위s/문자열/문자열/g | 범위 내 모든 행에서 대상 문자열을 바꿀 문자열로 바꿈 |
:범위s/문자열/문자열/gc | 범위 내 모든 행에서 대상 문자열을 바꿀 문자열로 바꾸고 수정 여부를 물음 |
: 범위 (Range)
.,$s : 현재부터 끝까지 치환
N,N2s : N 부터 N2 행까지 치환
-N,+N2 : 현재 커서 위치 기준으로 -N ~ +N2 행까지 치환
: Option
g : 한 줄 내의 모든 패턴 변경
i : 대소문자 구분 안함
c : 변경여부 확인
▶ 삭제
명령 | 설명 |
x | 커서가 위치한 글자 삭제 |
글자 수 + x | 커서 위치에서 글자 수 만큼 삭제 |
dw | 커서가 위치한 단어 삭제 |
단어 수 + dw | 커서 위치에서 단어 수 만큼 삭제 |
dd | 커서가 위치한 행을 삭제 |
행 수 + dd | 커서 위치에서 행 수 만큼 삭제 |
D | 커서 위치로부터 행의 끝까지 삭제 |
▶ 명령 취소
명령 | 설명 |
u | 명령 취소 |
U | 해당 행에서 한 모든 명령을 취소 |
▶ 검색
명령 | 설명 |
/문자열 | 문자열 커서 아래 방향으로 검색 |
?문자열 | 문자열 커서 위 방향으로 검색 |
n | 원래 방향으로 다음 문자열을 검색 |
N | 반대 방향으로 다음 문자열을 검색 |
'LINUX' 카테고리의 다른 글
LINUX 서비스 운영 방식 - standalone / xinetd (0) | 2021.08.02 |
---|---|
[LINUX] 그룹 관리 (0) | 2020.10.23 |
[Linux] 사용자 관리 (0) | 2020.10.20 |