vi 에디터
^f- (FORWARD) 화면을 one page 앞으로 옮김
^b- (BACKWARD) 화면을 one page 뒤으로 옮김
^d- (DOWN) 화면을 반 page 앞으로 옮김
^u- (UP) 화면을 반 page 뒤으로 옮김
H- HOME, 한 화면의 top line으로 옮긴다.
M- MIDDLE, 한 화면의 중간으로 옮긴다.
L- LAST, 한 화면의 마지막 line으로 옮긴다.
G- GOTO, 화일의 마지막 line으로 옮긴다.
nG- GOTO nth line the file (or :n)
^G- GIVES file status
w- WORD, 한단어 앞으로
b- BACKWARD, 한단어 뒤로
e- END, 현재 cursor가 위치한 맨 뒤로
o- zero, line의 맨 앞으로 (or ^)
$- end, line의 맨뒤로
/pattern - scan (/) 'pattern'이라는 글자를 현재 cursor가
위치한 곳의 다음 단어를 검색
?pattern - scan (?) 'pattern'이라는 글자를 현재 cursor가
위치한 곳의 앞 단어를 검색
n - 앞쪽에서 입력했었던 문자 'pattern' 의 다음단어를 검색
N - 앞쪽에서 입력했었던 문자 'pattern' 의 다음 앞 단어를
:q!- 화일의 내용을 저장하지 않고 exit
:w- WRITE, vi를 빠져나가지 않으면서 내용을 저장
:wq- WRITE and QUIT, vi를 빠져나가면서 내용을 저장
ZZ- :wq의 명령과 같다.
i- INSERT, cursor 위치 부터 문자 삽입
I- INSERT, line의 맨 앞부터 문자 삽입
a- APPEND, cursor 다음 위치 부터 문자 삽입
A- APPEND, cursor 위치한 line의 끝부터 문자 삽입
o- OPEN line, 현재의 line 다음에 line 삽입
O- OPEN line, 현재의 line 앞에 line 삽입
r- REPLACE, 한 문자만을 대치 (does not require ESC)
R- REPLACE, ESC 키가 입력될때 까지 대치
cw- CHANGE word, cursor가 위치한 곳의 단어 끝까지 대치
(cnw - change n number of words)
C- CHANGE, cursor가 위치한 곳에서 line 끝까지 대치
u- UNDOES, 마지막 명령의 취소
U- UNDOES, line전체를 원 상태로 복구
Y- YANKS(copies)line을 사용자가 보이지 않는 buffer에 저장
nY- YANKS n , n line을 사용자가 보이지 않는 buffer에 저장
x- deletes, 문자 하나를 삭제 (also 'd sp')
dw- DELETES words, 문자 하나를 삭제
D- DELETES, cursor가 있는 곳에서 부터 line끝 까지 삭제
dd- DELETES lines, line하나를 삭제 하고 보이지 않는 buffer에 저장
ndd- DELETES n, n line을 삭제 하고 보이지 않는 buffer에 저장
p- PUTS, cursor가 위치한 다음 line에 보이지 않는 buffer의
내용을 삽입
P- PUTS, cursor가 위치한 앞 line에 보이지 않는 buffer의
내용을 삽입
xp- cursor 가 위치한 문자와 다음 문자를 교환
:1,$s/string1/string2/g
1 line부터 끝까지 string1 를 string2 로 대치
e.g.,:1,$s/sun/SUN/g
:g/pattern/d
1 line부터 끝까지 pattern 을 제거
e.g.,:g/###/d (to delete lines inserted by cc file.c | & error-v)
:r file2 - cursor가 위치한 다음 line에 file2를 삽입
:w- 다른 화일을 읽기전에 현재의 화일을 저장 (file1)
:e file2 - 두번째 file을 edit하기 위해 load (file2)
:w- 두번째 화일을 저장 (file2)
:e #- original file 을 수정하기 위해 load (file1)
:e #file1 을 load (no changes)
"xPbuffer 'x'에 저장 되어 있는 내용을 put
:! cmd- editor안에서 shell command를 수행 하고자 할때
~ - (tilde or 'wavy'), 대문자를 소문자로 소문자를 대문자로 교환
%- 한 line안에서 (,),{,},[,]를 검색
mx- 문자 x에 현재 위치를 표시
d'x - 문자 x에 표시된 위치 부터 현재 cursor 위치 까지 삭제
^V- allows for insertion of control characters (e.g., ^L)
?string - scan (/) backward for 'pattern'
:n,m w file - n line에서m line까지내용을file(e.g., 15,25 w file)
J - JOINS, cusor가 있는 line과 다음 line을 join
:set ai- editor 가 자동적으로 insert tabs을 삽입
:set list - special characters 를 보여줌
(i.e., non-printable characters)
:set nows - stop wraparound search
:set ts=n - set tab stops to be other than the default (8)
:set wm=n - set wrap margin (automatic carriage return insert at n)
setenv EXINIT 'set ai wm=8 ts=4|map F W|map @ :w^M:e#^M'