리눅스 기반에 사용되는 vi 명령어에 대한 자료 정리글입니다.
1. 기본 실행 명령
vi | vi편집기를 호출 |
vi filename | 기존에 있는 파일이면 그 파일을 열고 없는 파일이면 새로 만든다. |
vi + 10filename | 지정화일의 10번째 행부터 화일열기 |
vi +/"school" filename | 지정화일내의 school이란 단어가 처음나오는 시점부터 열기 |
vi -r filename | 손상된 파일을 복구 |
view filename | 수정없이 읽기전용으로 열기 |
2. 커서 이동 명령
h | 왼쪽으로 이동 |
j | 아래로 이동 |
k | 위로 이동 |
l | 오른쪽으로 이동 |
w | 한단어 오른쪽으로이동 |
b | 한단어 왼쪽으로 이동 |
Return | 한행아래로 이동 |
Backspace | 한문자 왼쪽으로 이동 |
Spacebar | 한문자 오른쪽으로 이동 |
H | 화면의 맨위로 이동 |
M | 화면의 중간으로 이동 |
L | 화면의 맨 아래로 이동 |
^F | 한화면 앞으로 이동 |
^D | 반화면 앞으로 이동 |
^B | 한화면 뒤로 이동 |
^U | 반화면 뒤로 이동 |
3. 삽입 명령
a | 커서 오른쪽에 문자삽입 |
A | 커서 오른쪽, 행의끝에 문자삽입 |
i | 커서 왼쪽에 문자삽입 |
I | 커서왼쪽, 행의 처음에 문자삽입 |
o | 커서 아래에 행 삽입 |
O | 커서 위에 행 삽입 |
<Esc> | 작업완료후 반드시 입력 |
4. 텍스트 변경
cw | 단어 변경 |
cc | 행 변경 |
C | 커서 오른쪽의 행 변경 |
s | 커서가 위치한 문자열 대체 |
r | 커서 위치 문자를 다른 문자로 대체 |
r-Return | 행 분리 |
J | 현재 행과 아래 행 결합 |
xp | 커서 위치 문자와 오른쪽 문자교환 |
- | 문자형(대,소문자) 변경 |
u | 이진 명령 취소 |
U | 행 변경 사항 취소 |
:u | 이전의 최종행 취소 |
5.텍스트 삭제
x | 문자삭제 |
dw | 단어삭제 |
dd | 행 삭제 |
D | 커서 오른쪽 행 삭제 |
:5,10 d | 5-10째 행 삭제 |
6. 행번호 설정
set nu | 행번호 표시 |
:set nonu | 행번호 숨기기 |
7.행 찾기
G | 파일의 마지막 행으로 가기 |
12G | 파일의 12번째 행으로 가기 |
8. 텍스트 복사 및 이동
yy | 행 yank 또는 복사 |
Y | 행 yank 또는 복사 |
P | yank 되거나 삭제된 행을 현재 행 아래에 삽입 |
p | yank되거나 삭제된 행을 현재 행 위에 삽입 |
:1,2 co 3 | 1-2행을 3행 다음으로 복사 |
:4,5 m 6 | 4-5행을 6행 다음으로 이동 |
9. 찾기&바꾸기
/string/ | string탐색 |
?string? | string 역 방향 탐색 |
n(N) | string의 다음(이전) 계속 탐색 |
:g/search-string/s//replace-string/gc | 각 발생 탐색후 확인하고 대체 |
:s/str/rep/ | 현재 행의 str을 rep로 대체 |
:1,.s/str/rep/ | 1부터 현재 행의 str을 rep로 전부 대체 |
:%s/str/rep/g | 파일 전체 str을 rep로 전부 대체 |
10. 화면정리
^L | 불필요 화면내용 제거 |
11. 다른파일을 파일내로 삽입
:r filename | 커서 다음에 파일 삽입 |
:20 r filename | 파일을 20번째 행 다음에 삽입 |
12. 파일 저장&종료
:w | 변경사항 저장 |
:w filename | 지정한 파일로 저장 |
:wq | 변경사항 저장후 vi종료 |
ZZ | 변경사항 저장후 vi종료 |
:q! | 변경사항을 저장하지 않고 vi종료 |
'서버 > 리눅스' 카테고리의 다른 글
Linux - USB Device 접근권한 영구변경 (0) | 2024.03.14 |
---|---|
리눅스 하드디스크 추가/마운트 (0) | 2019.11.28 |
리눅스 파티션 복사 명령어 (0) | 2019.11.28 |