vi 초간단 사용법

by 라온클

들어가며

리눅스 포스팅을 뭘 하면 좋을까 생각하다가 vi 편집기가 생각났습니다.

저처럼 vi편집기 입문자(!)분들에게 도움이 되면 좋겠습니다.

vi 편집기 소개

vi는 유닉스 계열 운영체제에 포함된 기본 에디터입니다.

전세계 유닉스/리눅스 사용자들이 사용하는 기본 에디터이며, 저도 nano보다 vi를 더 많이 사용합니다.

퀵랩에서 nano 쓰라고 할 때도 vi 씁니다.

vi 실행 방법

vi 시작하기

vi {파일명}

vi {새 파일명} 을 입력하면 새 파일을 작성할 수 있습니다.

vi {기존 파일명} 을 입력하면 해당 기존 파일을 편집할 수 있습니다.

작성한 파일을 저장하지 않고, vi 종료하기

:q!

‘어 이게 아닌데?! 날려야겠다;;’ 할 때 쓰입니다.

작성한 파일을 저장 후, vi 종료하기

[esc]키 누른 후, :wq 를 입력합니다.

:wq

혹은 :wq!

vi 옵션

입력모드 들어가기

현재 커서가 위치한 곳에서 입력하기

i

일반적으로 제일 많이 쓰이는 입력모드 전환키입니다.

현재 커서가 위치한 곳의 다음 행에 빈 줄 삽입하기

o

i 만큼이나 자주 쓰이는 전환키입니다. ‘어 중간에 뭐 빠졌네. 넣어야겠다.’

현재 커서가 위치한 행의 맨 오른쪽부터 입력하기

A

대문자 A(shift + a)를 입력하세요.

현재 커서가 위치한 행의 맨 왼쪽부터 입력하기

I

대문자 I(shift + i)를 입력하세요.

명령모드로 전환하기(입력모드 나가기)

[esc]키를 누르세요.

예시1 : vi 시작하고 끝내기

지금까지 위에서 다룬 vi명령어만으로 파일을 작성하고 저장할 수 있습니다.

목표는 “vi편집기로 텍스트 파일을 작성 후, 저장해서 확인하기”입니다. 아래 움짤을 봅시다.

움짤에서 사용된 명령어는 아래와 같습니다.

#vi편집기로 텍스트 파일 생성하기
vi hello.txt

#입력모드 실행하기
i

#입력 시작하기
hello
world
hi
linux

#입력모드 나가기(명령모드로 전환하기)
[esc]

#저장하기
:wq

#입력한 내용 확인하기
cat hello.txt

명령모드에서 커서 위치 변환하기

← (커서를 왼쪽으로 한 칸 이동하기)

h

→ (커서를 오른쪽으로 한 칸 이동하기)

l

↑ (커서를 위쪽으로 한 칸 이동하기)

k

↓ (커서를 아래쪽으로 한 칸 이동하기)

j

이를 키보드 그림으로 표현하면 아래와 같습니다.

vi편집기에서 방향키를 맡고있는 hjkl
좌하상우 좌하상우

가장 첫번째 행으로 이동하기

gg

가장 마지막 행으로 이동하기

G

대문자 G(shift + g)를 입력합니다.

n번째 행으로 이동하기

nG

숫자와 대문자 G(shift + g)를 입력합니다.

예를 들어, 커서가 10행에 위치해 있는 상황에서 커서를 2행으로 이동하려면, 2G라고 입력하면 됩니다.

명령모드에서 삭제하기

현재 커서가 위치한 문자 삭제(delete와 같은 의미)

x

현재 커서가 위치한 단어 삭제

dw

현재 커서가 위치한 행 삭제

dd

깔끔하게 딱 한줄씩 지워주는 명령어입니다. 

예시2 : 2행에서 한줄씩 지우기

명령모드에서 2행에 커서를 위치시키고 dd를 입력합니다.

dd로 한줄씩 지우는 움짤
dd! dd! dd! dd!

현재 커서가 위치한 행부터 아래로 n행만큼 삭제

ndd

중간에서 한번에 지울 때 편합니다.

예시3 : 2행에서 아래로 세줄을 한번에 지우기

명령모드에서 2행에 커서를 위치시키고 3dd를 입력합니다.

명령모드에서 복사하기

현재 커서가 있는 행을 복사하기

yy

현재 커서부터 아래로 숫자만큼의 행을 복사하기

nyy

명령모드에서 붙여넣기

복사한 내용을 현재 행 이후에 붙여넣기

p

paste!

예시4 : 2행에서 아래로 세줄 복사 후, 맨 아래에 붙여넣기

위 움짤에서 사용된 명령어는 아래와 같습니다.

#아래로 세줄 복사하기
3yy
#커서를 맨 아래로 이동시키기
G
#붙여넣기
p

마무리하며

구글에 검색해보시면 본 포스팅보다 훨씬 자세하고, 잘 설명된 포스팅이 많으니 구글에 “vi 편집기 사용법”을 검색해보시기 바랍니다.

지금까지 <vi 초간단 사용법>포스팅을 읽어주셔서 감사합니다.🙇🏻‍♀️

참고 링크

You may also like