☆ 삽입 명령
명령어 | 설명 |
a | 커서 뒤에 입력 |
A | 라인 끝에 입력 |
i | 커서 앞에 입력 |
I | 라인시작 부분에 입력 |
o | 커서 있는 라인 밑에 입력 |
O | 커서가 있는 라인 위에 입력 |
☆ 커서 이동 명령
명령어 | 설명 |
h | 왼쪽으로 커서 한 칸 이동 |
H | 화면의 처음으로 이동 |
l | 오른쪽으로 한 칸 이동 |
L | 화면 끝으로 이동 |
e | 다음 단어의 마지막으로 이동 |
E | 커서를 공백으로 구분된 다음 단어 끝으로 이동 |
b | 한 단어 뒤로 |
B | 커서를 공백으로 구분된 이전 단어로 이동 |
w | 커서를 한 단어 뒤로 |
W | 커서를 공백으로 구분된 다음 단어로 이동 |
k | 커서를 한 라인 위로 |
j | 커서를 한 라인 아래로 이동 |
O | 커서를 라인의 시작으로 이동 |
$ | 커서를 라인의 끝으로 이동 |
Enter | 커서를 다음 라인 시작으로 이동 |
- | 커서를 전 라인의 시작으로 이동 |
Ctrl + F | 다음 화면으로 이동 |
Ctrl + D | 화면의 반만 다음으로 이동 |
Ctrl + B | 이전 화면으로 이동 |
Ctrl + U | 화면의 반만 이전으로 이동 |
G | 커서를 텍스트 마지막 라인으로 |
숫자G | 커서를 숫자 라인만큼 이동 |
M | 커서를 화면 중간 라인으로 이동 |
“ | 커서를 전 위치로 이동 |
( | 문장의 시작으로 이동 |
{ | 문단의 시작으로 이동 |
) | 문장 끝으로 이동하여 다음 단어의 시작으로 커서 이동 |
} | 문단 끝으로 이동 |
☆ 방향키를 이용한 커서 이동 명령
명령어 | 설명 |
<-, Del | 왼쪽으로 커서 한 칸 이동 |
PageUp | 화면 위로 이동 |
->, Space | 오른쪽으로 한 칸 이동 |
PageDown | 화면 아래로 이동 |
↑ | 윗 줄로 커서 이동 |
Enter | 다음 줄 첫 칸으로 이동 |
↓ | 아래 줄로 커서 이동 |
Esc | 다음 줄 첫 칸으로 이동 |
Home | 줄 처음 칸으로 이동 |
☆ 삭제 명령
명령어 | 설명 |
x | 커서가 있는 문자 삭제 |
X | 커서가 있는 문자 앞에 있는 문자 삭제 |
dw | 커서가 있는 단어 삭제 |
db | 커서가 앞에 있는 단어 삭제 |
dW | 공백으로 구분된 뒷 단어 삭제 |
dB | 공백으로 구분된 앞 단어 삭제 |
dd | 커서가 있는 라인 삭제 |
D | 커서가 있는 라인의 나머지 삭제 |
d) | 문장의 나머지 삭제 |
d} | 문단의 나머지 삭제 |
dG | 파일의 나머지 삭제 |
dH | 화면의 시작까지 삭제 |
dL | 화면의 나머지 삭제 |
J | 커서와 다음 단어의 공백을 모두 삭제 |
☆ 바꾸기 명령
명령어 | 설명 |
r | 커서에 있는 문자 대치 |
R | 입력 모드로 한 문자씩 덮어씀 |
s | 커서가 있는 문자 삭제 후 입력 모드로 전환 |
S | 커서가 있는 줄을 삭제 후 입력 모드로 전환 |
cb | 커서가 있는 앞 문자 삭제 후 입력 모드 |
cW | 공백으로 구분된 뒷 단어를 삭제 후에 입력 모드 |
cB | 공백으로 구분된 앞 단어 삭제 후 입력 모드 |
cc | 커서가 있는 라인을 삭제하고 입력 모드 |
C | 커서가 있는 라인의 나머지를 삭제하고 입력 모드로 전환 |
cO | 커서에서부터 라인의 시작까지 텍스트 바꾸기 |
c | 특정 텍스트 바꾸기 |
c) | 문장의 나머지 바꾸기 |
c} | 문단의 나머지 바꾸기 |
cG | 파일의 나머지 바꾸기 |
cm | 표시까지 모든 것 바꾸기 |
cL | 화면의 나머지 바꾸기 |
ch | 화면의 시작까지 바꾸기 |
☆ 복사
명령어 | 설명 |
yw | 커서가 있는 단어를 복사 |
yb | 커서가 있는 앞 단어를 복사 |
yW | 공백으로 구분된 뒷 단어 복사 |
yB | 공백으로 구분된 앞 단어를 복사 |
y | 특정한 다음 텍스트 복사 |
yy | 커서가 있는 라인을 복사, 커서가 가리키는 곳으로 라인을 이동 |
y) | 문자의 나머지 복사 |
y} | 문단의 나머지 복사 |
yG | 파일의 나머지 복사 |
yH | 화면의 시작까지 복사 |
yL | 화면의 나머지 복사 |
☆ 텍스트 이동
명령어 | 설명 |
p | 삭제나 복사된 텍스트를 커서가 있는 문자나 라인 뒤에 삽입 |
P | 삭제나 복사된 텍스트를 커서가 있는 문자나 라인 앞에 삽입 |
dw p | 커서가 있는 단어를 삭제한 후 이를 원하는 곳 커서 뒤로 삽입 |
dw P | 커서가 있는 단어를 삭제한 후 이를 변경한 커서가 있는 곳으로 삽입 |
d p | 지정한 다음 텍스트로 삭제한 후 커서가 가리키는 곳으로 이동 |
d) P | 문장의 나머지로 이동 |
d} p | 문단의 나머지로 이동 |
dG P | 파일의 나머지로 이동 |
dH P | 화면 시작 부분으로 이동 |
dL P | 화면의 나머지를 이동 |
☆ vi 에디터 종료 마치기 명령
명령어 | 설명 |
:q | 그대로 종료하기 |
:q! | 변경된 내용을 저장하지 않고 강제로 종료하기 |
:wq | 변경된 내용을 저장하고 종료하기 |
:x | :wq와 동일한 명령 |
ZZ | :wq와 동일한 명령 |
☆ 검색
명령어 | 설명 |
/pattern | 텍스트에서 앞으로 패턴 검색 |
>pattern | 텍스트에서 뒤로 패턴 검색 |
n | 앞 또는 뒤로 이전 검색 반복 |
N | 반대 방향으로 이전 검색 반복 |
/ | 전 검색을 앞으로 반복 |
? | 전 검색을 뒤로 반복 |
☆ 문자열 치환
명령어 | 설명 |
:s/old/new | 현재 행의 처음 old를 new로 교체 |
:s/old/new/g | 현재 행의 모든 old를 new로 교체 |
:10,20s/old/new/g | 10행부터 20행까지 모든 old를 new로 교체 |
:-3,+4s/old/new/g | 현재 커서 위치에서 3행 위부터 4행 아래까지 old를 new로 교체 |
:%s/old/new/g | 문서 전체에서 old를 new로 교체 |
:%s/old/new/gc | 문서 전체에서 old를 new로 확인하며 교체 |
:g/pattern/s/old/new/g | Pattern이 있는 모든 행의 old를 new로 교체 |
:g/pattern/s//new/g | :%s/old/new/g와 동일 |
☆ 옵션
옵션 | 약어 | 기능 | 기본값 |
autoindent | ai | 들여 쓰기 가능, 탭으로 들여 쓰기 범위 지정 | off |
autoprint | ap | 줄이 바뀔 때 현재 줄을 화면상에서 출력 | on |
errobells | ed | 명령 에러가 발생시 삑 소리나게 함 | off |
number | nu | 줄 번호를 나타나게 함 | off |
report | report | 편집시 메시지를 보낼 편집 변화 크기 지정 | 5 |
showmatch | sm | 가로 닫기 괄호를 사용할 때 일치하는 가로 열기 괄호를 보여줌 | off |
wam | wam | 저장하지 않고 vi 종료할 때 경고 메시지를 뿌려 줌 | on |
ignorecase | ic | 검색 패턴에 사용되는 대소문자 구별하지 않음 | on |
tabstopp=n | ts=n | 탭 공백을 n 수만큼 지정 | 8 |
wrapmargin=n | wm=n | 텍스트 오른쪽 여백을 n 수만큼 지정 | 0 |
☆ Mark 사용
명령어 | 설명 |
mx | 현재 위치를 x 이름의 마크로 저장 |
`` | 이전에 마크한 위치로 이동 |
`x | 마크한 위치(행, 열)로 이동 |
‘’ | 이전에 마크한 줄로 이동 |
‘x | 마크한 줄로 이동 |
☆ Named Buffer 사용
명령어 | 설명 |
“ayy | 현재 줄을 "a 버퍼에 복사 |
“Ayy | 기존의 버퍼에 현재 줄을 버퍼에 추가 |
"ap | “a 버퍼에 복사된 데이터를 붙여 넣기 ☞‘a’ 부터 ‘z’ 까지 사용가능 |
☆ 여러 문서 편집 ( vi filename1, filename2 … 로 실행 ; 여러 파일 열기)
명령어 | 설명 |
:n | vi로 open한 여러 파일중 다음 파일로 전환 |
:N | vi로 open한 여러 파일중 이전 파일로 전환 |
:4n | 여러 파일중 4개 파일 skip후 파일 Open |
:args | 현재 열린 모든 파일중 현재 편집중인 파일 표시 |
댓글