[07.08.27] 업데이트 됨
s는 한개 제거 하면서 글쓰기
S는 한줄 지우면서 글쓰기
cw는 현재 커서 뒤에것 다 지우면서 글쓰기(지우는 단위는 단어) - change word
C는 현재 커서 뒤에것 다 지우면서 글쓰기(지우는 단위는 줄 - 한줄 통째로 지워진다.)
S는 현재 줄 제거 하면서 글쓰기
dw는 현재 커서 뒤에것 다 지우기 (지우는 단위는 단어) - 끝나면 메뉴 모드 - delete word
w - word
d - delete
c - change
+
< vi에서 열은 파일 전체선택하기 >
gg 는 파일을 제일 처음으로 옮기는 명령이다.
G 는 파일의 제일 끝으로 옮기는 명령이다.
v, V 는 블럭 지정 명령이다.
VG 제일 처음에서 전체를 선택할때 사용
vgg 는 제일 끝에서 전체를 선택할 때 사용
+
vi에서 탐색 후 확인하고 대체
:g/search-string/s//replace-string/gc?
+
s는 한개 제거 하면서 글쓰기
S는 한줄 지우면서 글쓰기
cw는 현재 커서 뒤에것 다 지우면서 글쓰기(지우는 단위는 단어) - change word
C는 현재 커서 뒤에것 다 지우면서 글쓰기(지우는 단위는 줄 - 한줄 통째로 지워진다.)
S는 현재 줄 제거 하면서 글쓰기
dw는 현재 커서 뒤에것 다 지우기 (지우는 단위는 단어) - 끝나면 메뉴 모드 - delete word
w - word
d - delete
c - change
+
< vi에서 열은 파일 전체선택하기 >
gg 는 파일을 제일 처음으로 옮기는 명령이다.
G 는 파일의 제일 끝으로 옮기는 명령이다.
v, V 는 블럭 지정 명령이다.
VG 제일 처음에서 전체를 선택할때 사용
vgg 는 제일 끝에서 전체를 선택할 때 사용
+
vi에서 탐색 후 확인하고 대체
:g/search-string/s//replace-string/gc?
+
vi 편집기 사용법
vi 시작 | ||
vi filename | 파일열기, 작성 | |
vi +18 filename | 18행으로 파일 열기 | |
vi +/"string" fn | "string"의 처음 발생 단어부터 | |
vi -r filename | 손상된 파일 회복 | |
view filename | 읽기 전용으로 파일 열기 | |
커서명령(이동) | ||
h(←) | 왼쪽으로 커서 이동 | |
j(↓) | 아래로 커서 이동 | |
k(↑) | 위로 커서 이동 | |
l(→) | 오른쪽으로 커서 이동 | |
w | 한 단어 오른 쪽으로 커서 이동? | |
b | 한 단어 왼쪽으로 커서 이동? | |
Return | 한 행 아래로 커서 이동 | |
Back Space | 한 문자 왼쪽으로 커서 이동 | |
Space Bar | 한 문자 오른 쪽으로 커서 이동 | |
H | 화면의 맨위로 이동 | |
M | 화면의 중간으로 이동 | |
L | 화면의 맨 아래로 이동 | |
Ctrl + F | 한 화면 앞으로 이동 | |
Ctrl + D | 반 화면 앞으로 이동 | |
Ctrl + B | 한 화면 뒤로 이동 | |
Ctrl + U | 반 화면 뒤로 이동 | |
문자와 행 삽입 | ||
a | 커서 오른쪽에 문자 삽입 | |
A | 커서 오른쪽, 행의 끝에 문자 삽입 | |
i | 커서 왼쪽에 문자 삽입 | |
I | 커서 왼쪽, 행의 처음에 문자 삽입 | |
o | 커서 아래에 행 삽입 | |
O | 커서 위에 행 삽입 | |
텍스트 변경 | ||
cw (종료:ESC) | 단어변경 | |
cc (종료:ESC) | 행 변경 | |
C (종료:ESC) | 커서 오른쪽의 행 변경 | |
s (종료:ESC) | 커서가 위치한 문자열 대체 | |
r | 커서 위치의 문자를 다른 문자로 대체 | |
r - Return | 행 분리 | |
J | 현재 행과 아래 행 결합 | |
xp | 커서 위치 문자와 오른쪽 문자 교환 | |
~ | 문자형(대.소문자)변경 | |
u | 이전 명령 취소 | |
U | 행 변경 사항 취소 | |
:u | 이전의 최종 행 취소 | |
. | 이전 최종 명령 반복 |
텍스트 삭제 | ||
x | 문자 삭제 | |
dw | 단어 삭제 | |
dd | 행 삭제 | |
D | 커서 오른쪽 행 삭제 | |
:5,10 d | 5-10 번째 행 삭제 | |
텍스트 복사 및 이동 | ||
yy | 행 yank 또는 복사 | |
Y | 행 yank 또는 복사? | |
dd | 행 삭제 | |
P | yank되거나 삭제된 행 현재 행 위에 삽입 | |
p | yank되거나 삭제된 행 현재 행 아래에 삽입 | |
:1,2 co 3 | 1-2행을 3행 다음으로 복사 | |
:4,5 m 6 | 4-5행을 6행 위로 이동 | |
행 번호 설정 | ||
:set nu | 행 번호 표시 | |
:set nonu | 행 번호 숨기기 | |
행 찾기 | ||
G | 파일의 마지막 행으로 가기 | |
21G | 파일의 21번째 행을 가기 | |
탐사 및 대체 | ||
/string/ | string 탐색 | |
?string? | string 역방향 탐색 | |
n(N) | string의 다음(이전) 계속 탐색 | |
:g/search-string/s//replace-string/gc? | ||
각 발생 탐색 후 확인하고 대체 | ||
:s/srt/rep | 현재 행의 str을 rep로 대체 | |
:1,.s/str/rep/ | 1부터 현재 행의 str을 rep로 대체 | |
:%s/str/rep/g | ?파일 전체 str을 rep로 전부 대체 | |
화면정리 | ||
:Ctrl-1 | 불필요한 화면정리 후 다시 표시 | |
파일을 파일로 삽입 | ||
:r filename | 커서 다음에 파일 삽입 | |
:34 r filename | 파일을 34번째 행 다음에 삽입 | |
보관 및 종료 | ||
:w | 변경사항 보관 | |
:w filename | 버퍼를 파일로 보관 | |
:wq | 변경사항 보관 후 vi 종료 | |
ZZ | 변경사항 보관 후 vi 종료? | |
:q! | 변경사항 보관하지 않고 종료 |