vi file.txt
-R 옵션 : 읽기만 가능
vi + file : 커서를 마지막 줄에 두고 열기
vi +n file : 커서를 n번째 줄에 두고 열기
vi +/pat file : 커서를 패턴이 처음 나오는 곳에서 열기
vi -r
복구할 수 있는 모든 파일을 나열
vi –r filename
vi를 열고 이전 내용을 복구
-텍스트를 편집
-특수기능 수행
-초기모드
-복잡한 기능을 수행하기 위한 모드
G - 마지막 줄로 이동
1G - 첫번째 줄로 이동
17G - 17번째 줄로 이동
h - 왼쪽으로 한 칸 이동
l - 오른쪽으로 한 칸 이동
k - 위로 한 칸 이동
j - 아래로 한 칸 이동
b - 한 글자 뒤로 이동
w - 한 글자 앞으로 이동
H - 스크린의 첫번째 줄로 이동
M - 스크린의 중간 줄로 이동
L - 스크린의 마지막 줄로 이동
e - 다음 단어의 마지막으로 이동
'-' - 이전 줄로 이동
'+' - 다음 줄로 이동
$ -줄의 마지막으로 이동
^ - 줄의 시작으로 이동
{ - 한 단락 위로 이동
} - 한 단락 아래로 이동
^b 또는 ^u - 한 페이지 뒤로 이동
^f 또는 ^y - 한 페이지 앞으로 이동
:n - n번째 줄로 이동
:$ - 마지막 줄로 이동
:$= - 파일의 총 줄의 수를 출력
:.= 현재 줄의 수를 출력
i - 커서의 앞에서 쓰기 시작
a - 커서의 뒤에서 쓰기 시작
o - 현재 커서 아래에 새로운 줄로 쓰기 시작
I - 현재 줄의 처음에서 쓰기 시작
A - 현재 줄의 끝에서 쓰기 시작
O - 현재 커서의 위에서 새로운 줄로 쓰기 시작
x - 문자 1개 삭제(자르기)
24x - 문자 24개 삭제(자르기)
dd - 현재 줄 삭제(자르기)
4dd - 현재 줄 포함 4개 줄 삭제(자르기)
D - 커서부터 줄의 끝 까지 삭제(자르기)
dw - 현재 단어 삭제(자르기)
yy - 현재 줄 복사
5yy - 현재 줄 포함 5개 줄 복사
p - 현재 커서의 뒤에 붙여넣기
P - 현재 커서의 앞에 붙여넣기
v - 문자별로 복사를 위해 문자 선택하기
V - 줄 별로 복사를 위해 줄 선택하기
r - 커서에 있는 문자 1개를 다른 문자로 대체
8r - 커서부터 8문자를 다른 문자로 대체
R - 덮어쓰기(Esc눌러서 종료)
C - 커서부터 줄 끝까지 다른 문자로 대체
S - 줄 전체를 다른 문자로 대체
4S - 4줄 전체를 다른 문자로 대체
cw - 단어를 다른 문자로 대체
:[begin,end]s/pattern1/pattern2/flag
-[begin,end]
% - 파일 전체
$ - 마지막 줄
. - 현재 줄
-flag
g - 모든 상황
c - 상황에 맞게 물어봄
u - 되돌리기
^r - 되돌리기 했던 것을 한번 더 반복
. - 마지막 명령을 다시하기
/@@ - @@라는 문자의 앞으로 찾으며 넘어간다
?@@ - @@라는 문자의 뒤로 찾으며 넘어간다
:[begin,end]w filename
-begin부터 end까지 내용을 filename으로 저장
:1,.w filename
-처음부터 현재까지 내용을 filename으로 저장
:1,.w! filename
-처음부터 현재까지 내용을 filename으로 저장(덮어쓰기까지)
:1,.w >> filename
-처음부터 현재까지 내용을 fliename이라는 파일에 내용을 추가하기
:r fliename
-filename이라는 파일을 현재 커서에 읽어들인다
:e filename
-현재 파일 편집을 종료하고 filename을 연다
:! command
-쉘 명령을 실행
:r! command
-쉘 명령을 실행하고 결과를 파일에 넣는다
:set tabstop=~
-tab의 크기를 정의
:set number / :set nonumber
-줄 숫자를 보여주고, 숨김
:set list / :set nolist
-특수문자 표시, 숨김
:set showmode / :set noshowmode