vi editor 명령어
실행하기
vi |
저장할때 파일명을 지정함. |
vi 파일명 |
~]# vi t.c |
vi + 파일명 |
커서 끝 부분으로 위치 |
vi -R 파일명 |
읽기 전용 모드 |
vi -r 파일명 |
시스템 다운 후 복구 기능 |
편집모드로 들어가기
a
현재 커서의 위치의 다음칸에서 시작
A
커서가 있는 줄의 맨 뒤에서 시작
i
현재 커서의 위치에서 편집모드 시작
I
커서가 있는 줄의 맨 앞에서 편집모드 시작
o
커서 있는 줄 아래 빈 줄 삽입
O
커서 있는 줄 위 빈 줄을 삽입
R
덮어쓰기 모드로 전화
저장 또는 저장하지 않고 빠져 나오기
:wq, :x, ZZ
저장하고 나오기
:w
저장만 하기
:w file name
다음이름으로 저장
:q!
저장하지 않고 나오기
:r 파일명
지정한 파일을 현재 문서로 불러옴
:e 파일명
현재 화면을 지우고 새로운 파일을 불러옴
:3,7 w 파일명
3~7줄 까지의 내용을 해당 파일명으로 저장
검색 하기 (ESC 키를 입력후에 명령어 모드에서 실행해야 한다, 대소문자를 구분)
/문자열
아래 방향으로 해당 문자열을 검색한다
?문자열
위 방향으로 해당 문자열을 검색한다
n
찾던방향으로 다음 물자열을 검색
N
찾던 역방향으로 다음 문자열을 검색
삭제
x
한 문자 삭제
d↑
커서 있는 줄, 윗 2줄 삭제
d↓
커서 있는 줄, 아래 2줄 삭제
dw
한 단어 삭제
dd
한 줄 삭제
D
한줄 커서 있는 뒤 모두 삭제
u
전에 수행한 명령 취소
커서 이동
^, 0
줄의 처음이로 이동
$
줄의 끝으로 이동
H
화면 맨 위로 이동
L
화면 맨 아래로 이동
w
다음 단어로 이동
b
이전 단어로 이동
shift ↑
한 페이지 앞으로 이동
shift ↓
한 페이지 뒤로 이동
복사 붙여넣기
yy
현재 줄 BF 복사
p
BF 있는 내용 삽입
3y
현재 줄부터 아래 3줄 복사
:3,12y
3~12줄 BF 복사
:20pu
20행에 BF 내용 삽입
치환 (출처:http://cafe.naver.com/bit2009/122)
:범위s/haha/hoho
범위에서 처음 한개만 치환
:범위s/haha/hoho/g
범위에서 모두 치환
범위관련 특수문자
현재(.) 처음(^) 맨끝($) 전체(%)
escape 문자
\ 사용
전체 치환
:%s/haha/hoho/g
5~23 치환
:5,23s/haha/hoho/g
기타
:set nu
행 번호 보여주기
:set nonu
행 번호 보여주기 취소
<part 2>
- 시작/종료 및 기타
:set number 또는 :set nu 행에 번호 부여
:set nonumber 또는 :set nonu 행에 부여된 번호 제거
:ZZ 또는 :wq 저장하고 vi 에디터 종료
:w [filename] 주어진 파일 이름으로 저장
:w! [filename] 주어진 파일 이름으로 저장/덮어쓰기 후 종료
:w! 저장후 편집종료
:q 저장하지 않고 vi 에디터 종료
:q! 저장하지 않고 vi 에디터 강제종료
:e vi 에디터 종료하지 않고 다른 파일 편집
:e! 편집한 내용 저장하지 않고 최종 저장된 상태로 파일 열기
- 입력
i 문자 앞에서부터 입력
a 현재 문자 뒤에서부터 입력
I 현재 라인 첫머리에서부터 입력
A 현재 라인 맨뒤에서부터 입력
o 현재라인 아래에 입력
O 행의 위에 입력
r 겹쳐쓰기(커서위치 1문자 변환)
R 현재문자 이후부터 겹쳐쓰기
s 커서가 있는 단어를 지우고 입력하기
ch 커서 바로 앞의 한글자를 여러글자로 수정하기
S 커서가 있는 행을 지우고 입력하기
cw 커서 위치의 한 단어를 수정하기
co 커서 위치부터 줄의 처음까지 수정하기
c 커서 위치부터 줄의 끝까지 수정하기
cc 커서가 있는 줄을 수정하기
cj 커서가 있는 줄과 그 다음 줄을 수정하기
ck 커서가 있는 줄과 그 앞줄을 수정하기
- 삭제
dw 한 단어 삭제
dd 한 라인 삭제
[number]dd 커서있는 위치에서 숫자만큼 라인 삭제
dj 커서가 있는 줄과 그 다음 줄을 삭제
dk 커서가 있는 줄과 그 앞줄을 삭제
do 커서 위치부터 줄의 처음까지 삭제
x 커서의치의 글자 삭제
D 한줄삭제
d$ 커서 위치부터 줄의 끝까지 삭제
X 커서 바로 앞의 글자 삭제
- 치환
cw 한 단어 바꾸기(단어의 첫머리에 커서 위치해야함)
- 복사
y 문자 복사
yy 한라인 복사
yw 커서 위치부터 단어의 끝까지 복사하기
yj 커서가 있는 줄과 그 다음줄을 복사하기
yo 커서 위치부터 줄의 처음까지 복사하기
yk 커서가 있는 줄과 그 앞줄을 복사하기
y$ 커서 위치부터 줄의 끝까지 복사하기
p 현재 줄 다음에 버퍼의 내용을 붙임
P 현재 줄 앞에 버퍼의 내용을 붙임
- 명령어 취소/반복
esc key 입력화면에서 빠져나옴옴
u 또는 :u 되돌리기
U 그줄에 행해진 작업 모두 취소하기
. 조금전에 했던 명령 반복하기
# 이동 명령어
:[number] 숫자의 행으로 이동
:0 문서의 맨앞으로 이동
:$ 문서의 맨뒤로 이동
l 오른쪽으로 이동
h 왼쪽으로 이동
j 아래로 이동
k 위로 이동
B 특수문자,기호제외(한단어 뒤로이동)
b 한단어 뒤로 이동
w 한단어 앞으로 이동
W 특수문자, 기호제외(한단어 앞으로 이동)
enter 다음줄의 첫글자로 이동
e 단어의 마지막 글자로 이동
o 라인의 시작으로 이동
E 단어의 마지막 글자로 이동하기
$ 라인의 끝으로 이동
shift키와 함께 사용
gg 파일의 첫 행으로 이동
G 파일의 마지막 행으로 이동
^ 라인의 첫 번째 단어로 이동
shift키와 함께 사용
+ 다음 라인의 처음으로 이동
H 화면의 맨위로 이동
- 이전 라인의 처음으로 이동
M 파일의 중간으로 이동
[ctrl]+F 한 화면 앞으로 이동
L 화면의 끝으로 이동
[ctrl]+D 한 화면의 반만큼 앞으로 이동
/[text] 단어검색
/[filename] 파일검색
[ctrl]+B 한 화면의 뒤로 이동
[ctrl]+U 한 화면의 반만큼 뒤로 이동