이동명령

글자

h ,j ,k ,l

←↓↑→

문장

w, W, b, B

단어 단위로 , 뒤로 이동 소문자는 구두점도 하나의 단어로 인식하며, 대문자는 구두 점을 무시한다.

e, E

단어의

), (

다음, 이전 문장의 시작

}, {

다음, 이전 구의 시작

]], [[

다음, 이전 절의 시작

0, $

현재 행의 처음, 마지막 위치

^

현재행의 문자(공백은 무시)

+, -

다음, 이전 행의 문자

n|

현재행의 n번째

H

화면의

M

화면의 중간

L

화면의 마지막

nH

화면 첫행에서 아래로 n번째

nL

화면 마지막 행에서 위로 n번째

화면

CTRL-F, CTRL-B

한화면 , 뒤로

CTRL-D, CTRL-U

반화면 아래, 위로

CTRL-E, CTRL-Y

화면 전체를 한행 , 아래로

z[RETURN]

깜박이가 있는 행을 화면 첫행으로

z.

깜박이가 있는 행을 가운데 행으로

z-

깜박이가 있는 행을 가운데 행으로

검색

/pattern

방향으로 패턴을 검색

?pattern

방향으로 패턴을 검색

n, N

동일, 반대 방향으로 마직막 검색을 반복

/, ?

, 뒤로 이전 검색을 반복

fx

현재 행에서 글자 x 앞방향으로 검색

Fx

현재 행에서 글자 x 뒷방향으로 검색

tx

현재 행에서 글자 x 앞방향으로 검색한후, 글자 x 글자로 이동

Tx

현재 행에서 글자 x 뒷방향으로 검색한후, 글자 x 글자로 이동

;

이전 현재 검색을 반복

'

이전 현재 검색을 반대 방향으로 반복

번호

CTRL-G

현재의 번호를 출력

nG

n 번째 행으로 이동

G

파일의 마지막 행으로 이동

``

G 명령 전의 마지막 위치로 이동(두개의 작은 따옴표)

:n

n 번째 행으로 이동

편집명령

삽입

i, a

깜박이 , 뒤에 문장 삽입

I, A

행의 시작, 끝에 문장 삽입

o, O

깜빡이 아래, 줄에 새로운 편집

R

글자 덥어쓰기

변경

r

한글자 변경

~

소문자 변경(다른 명령, 숫자와 결합할 없음)

cw

단어 변경

cw

단어 변경

cc

현재 변경

C

깜박이 위치에서 끝까지 변경

s

글자를 삭제하고 문장으로 대치

S

현재 행을 삭제하고 문장으로 대치

삭제, 이동

x

한글자 삭제

X

깜박이 앞의 한글자 삭제

dw, de

단어 삭제(단어 다음의 공백 포함), 단어만 삭제

dd

현재행 삭제

D

깜박이 위치에서 끝까지 삭제

p, P

깜박이 아래, 줄에 삭제한 문장 붙이기

"np

삭제 버퍼로 부터 n 번째 행을 깜박이 아래줄에 붙이기(마지막 9개의 삭제행에 대해)

복사

yw

한단어 복사

yy

현재행 복사

"ayy

현재행을 a라는 버퍼에 복사

p, P

깜박이 아래, 줄에 복사된 문장을 붙임

"aP

버퍼 a 문장을 깜박이 윗줄(p, 아래 ) 붙임

ex 편집명령

:d

삭제

:m

이동

:co

복사

:.,$d

현재 행에서 파일 끝까지 삭제

:30, 60m

현재행 다음 줄에 30행부터 60행까지를 이동

.,/pattern/co$

현재행 부터 pattern 포함하는 항까지를 파일 끝으로 복사

명령행 옵션

명령행

vi file

file vi 편집기로 호출

vi file1 file2

파일들을 연속적으로 vi 편집기로 호출

view file

파일을 읽기 모드로 vi 편집기로 호출

vi -R file

파일을 읽기 모드로 vi 편집기로 호출

vi -r file

시스템이 크래쉬된 , 파일과 최근 편집 사항을 복구

vi + file

마지막 행으로 파일 열기

vi +n file

n 번째 행으로 파일 열기

vi +/pattern file

pattern으로 파일 열기

ex file

파일을 ex 편집기로 열기

종료명령

종료 명령

ZZ

저장하고 빠저나오기

:x

저장하고 빠저나오기

:wq

저장하고 빠저나오기

:w

저장하기

:w!

저장하기(겹처쓰기 방지)

:30,60w newfile

30번째 행에서 60번째 행까지를 newfile 저장하기

:30,60w >> file

30번째 행에서 60번째 행까지를 file 덧붙이기

:w %.new

file이라는 파일을 file.new 저장하기

:q

종료하기

:q!

종료하기(겹처쓰기 방지)

:Q

vi 종료하고, ex 호출하기

:e file2

vi 종료하지 않고 file2 편집하기

:n

다음 파일 편집하기

:e!

현재 편집하고 있는 파일(변경사항을 저장하지 않은 원본) 다시 부르기

:e#

이전 파일 편집하기

:pre

Unix 시스템에 파일보존 신청하기. Unix 프롬프트에서 vi -r file 입력하면 이전에 변경한 사항을 복구할 있다.

#

이전 파일명

기타명령

vi 명령

.

마지막 명령 반복

u, U

마지막 명령, 행에대한 명령 취소

J

합치기

CTRL-L

화면 다시 그리기

CTRL-R

취소 명령 취소(Redo)

ex 명령

:

vi 부터 ex 호출

:vi

ex 부터 vi 호출

:sh

호출

^D

쉘에서 vi 돌아가기

:! command

Unix 명령어 실행

:r newfile

newfile 현재 파일로 읽음

:r! command

Unix 명령어의 출력을 현재파일로 읽음

표시

mx

현재의 위치를 x 표시(숫자는 안됨)

`x

x 깜박이 이동

``

이전 표시나 이동 문장으로 되돌아가기

'x

표시 x 포함하는 행의 선두로 이동

''

이전 표시를 포함하는 행의 선두로 이동

단축

:map x sequence

x 편집명령어 집합으로 정의

:unmap x

x에대한 정의 삭제

:ab abbr phrase

phrase 약자를 abbr 한다. abbr 삽입모드에서 입력되면 완전한 단어나 구로 확장된다.

:unab abbr

약어를 삭제한다.

사용자화

:set option

옵션을 사용

:set option=value

옵션에 value 할당

:set nooption

옵션 사용안함

:set

사용자에의해 설정된 옵션 보이기

:set all

기본 옵션과 사용자가 설정한 모든 옵션의 목록 보이기

:set option?

설정된 옵션값 보이기

주의:.exrc 파일내에서는 ex 명령의 시작을 나타내는 콜론(:) 생략해야 한다.

vi에서 설정가능한 옵션은 여기 클릭하기 바랍니다.