컴퓨터/Linux

vi editor 명령어

김치부침개21 2016. 1. 17. 22:20
반응형

실행하기 

 

 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

 행 번호 보여주기 취소

[출처] VI 명령어|작성자 따식이

 

 

 

 

 

 

  

 <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    한 화면의 반만큼 뒤로 이동

반응형