playdata/homework

텍스트 에디터 vim(vi) 사용법 요약

soojin1 2024. 7. 14. 14:28

Vimtutor 실행하기

vimtutor ko

 

Lesson 1

1. 커서 움직이기 : h(왼쪽) j(아래) k(위) l(오른쪽)

2. vim <파일이름> : 쉘에서 빔 시작하기

3. <ESC> q! : 저장 안하고 나가기

<ESC>: wq : 저장하고 나가기

4. x : 커서가 위치한 곳의 글자 지우기

5. i : 커서 앞에 삽입

a : 문장 뒤에 추가

 

 

Lesson 2

1. dw : 커서가 위치한 곳 부터 단어의 끝까지 지우기

2. d$ : 커서가 위치한 곳부터 줄 끝까지 지우기

3. dd : 줄 전체를 지우기

4. 2w : 횟수와 함께 대상을 반복시키기

5. 명령 모드에서 명령의 형식

[횟수] 명령 대상 / 명령 [횟수] 대상

6. 0 : 커서를 문장 맨 앞으로 옮기기

7.  u : 이전 행동 취소

U : 한 줄에서 수정한 것을 모두 취소

CTRL-R : 취소한 것을 다시 실행  

 

 

Lesson 3

1. p : 커서 다음에 지워진 내용 되돌리기

2. r : 커서 아래의 글자를 치환(원래 글자 대신 바꾸어 넣을 글자 입력)

3. [횟수] c 대상 / c [횟수] 대상 : 변환명령

ex) ce : 커서 위치에서 단어 끝까지 바꾸기

c$ : 줄 끝까지 바꾸기

 

Lesson 4

1.

<CTRL> g : ruler 옵션

- G : 파일의 끝으로 이동

- <숫자> G : <숫자> 줄로 이동

- gg : 첫 번째 라인으로 이동

2.

/<문자> : 아랫방향으로 찾기

?<문자> : 윗 방향으로 찾기

n : 같은 방향으로 다음 문구 찾기

shift n : 반대 방향으로 찾기

<CTRL> o : 과거의 위치로

<CTRL> i : 새로운 위치로 옮기기

3. % : 커서가 ( ) [ ] { } 위에 있을 때 %를 입력하면 상응하는 짝 찾기

4. 

- s/old/new : 줄에 처음 등장하는 old 를 new로 바꾸기

- s/old/new/g : 한 줄에 등장하는 모든 old를 new로 바꾸기

- #,#s/old/new/g : 두줄 #,# 사이에서 치환

- %s/old/new/g : 파일 내의 모든 문구를 치환

- %s/old/new/gc : 바꿀 때마다 확인을 거치기

 

Lesson 5

1. :!<command> : 외부 명령 실행

ex) :!ls : 디렉토리 목록 

:!rm<FILENAME> : FILENAME이라는 파일 지우기

2. :w FILENAME : 현재 vim에서 사용하는 파일을 FILENAME이라는 이름으로 디스크에 저장한다.

3. v: 비주얼 모드

:w FILENAME : 비주얼 모드에서 선택된 문장들을 FILENAME으로 저장

:r FILENAME : FILENAME 파일을 불러들여 커서 위치 뒤에 현재 파일을 집어넣기

:r !dir : 명령어의 결과값을 현재 커서 위치 아래에 붙이기

 

Lesson 6

1.

o : 커서 *아래에* 한 줄이 생김

O : 커서가 있는 줄의 *위로* 한 줄이 생김

 

2.

a : 커서 *다음에* 글 입력

A : 그 줄의 끝에 글자 추가

 

3. e : 단어의 끝으로 이동

 

4. 

y : 복사

p :  붙여넣기

 

5. R : 바꾸기 모드

 

6. 

:set <xxx> : xxx 옵션 설정

-'ic' 'ignorecase' 대소문자 구별x

-'is' 'incsearch' 검색어에서 부분 검색 결과 보여주기

-'his' 'hlsearch'  검색 결과값을 하이라이트

 

7. :set noic : 옵션 끄기

 

Lesson 7

1. :help / <F1> / <Help> : 도움말 열기

2. :help cmd : cmd에 대한 도움말 보기

3. CTRL-W 를 이용해 다른 윈도우로 넘어가기 

4. :q 도움말 윈도우 빠져나오기

5. vimrc 시작 스크립트를 이용해 세팅 유지

6. <CTRL> D   : 명령어를 입력할 때 가능한 명령어 보기

<TAB>으로 완성

 

'playdata > homework' 카테고리의 다른 글

[Linux] grep 명령어와 정규 표현식  (0) 2024.07.12