백엔드

[리눅스] vi편집기 사용법,명령어 정리

음그냥 2023. 10. 7. 19:40
728x90
반응형
SMALL

linux, unix 에서 사용하는 vi 편집기는 명령모드, 입력모드, 마지막 행 모드로 총 3가지 모드로 구성되어있음

 

-명령모드 :   esc 눌렀을때 또는 vi 바로 들어가자마자 상태의 모드임

-입력모드 : 데이터를 타이핑해서 입력할수있는 모드임

-마지막 행모드 ( Last line mode ) : 맨래에  " : + 명령어 " 로 저장할지, 저장하면서 종료할지 등등의 명령어를 실행할수있는 모드임 ( esc 누르고, 콜론( : )을 누르면 나오는 상태 )

 

 

< vi 편집기를 이용해서 텍스트파일을 만드는법 >

1) 쉘에 "vi 파일이름.txt" 를 입력후 엔터쳐서 텍스트파일을 만듦

2) i나 a나 o를 눌러서 입력모드로 전환해서 내용을 입력

3) esc로 명령모드로 전환후 :wq 로 저장후 종료

진짜 쉽다 끝ㅎ

 

록키리눅스 캡쳐한 화면임

 

 

< 명령 모드에서의 명령어들 >

esc 눌렀을때 또는 vi 바로 들어가자마자 상태, 엔터를 치지 않아도됨

 

 

i : 현재 커서 위치에 삽입 (입력모드로 넘어감) 

a : 현재 커서 바로 다음위치에 삽입 (입력모드로 넘어감) 

o : 현재 줄 다음 위치에 삽입 (입력모드로 넘어감)

x : 커서가 위치한 곳의 글자 1개 삭제. (5x : 문자 5개 삭제) 

dw : 커서가 위치한 곳에서 부터 단어 삭제 (커서가 위치한 곳 부터 띄어쓰기 까지)

dd : 커서가 위치한 곳의 한 줄 삭제 (삭제이지만, p로 복구가능)

u : 방금 한 명령 취소 (ctrl + z 라고 생각하면됨)

yy : 현재 줄을 버퍼로 복사 (한 줄을 ctrl + c 한다고 생각하면됨)  ex) 3줄 복사 : 3yy 

 

p : 현재 커서가 있는 줄 바로 아래에 버퍼 내용 붙여넣기 (이전에 복사한 줄을 현재 커서 아래부터 ctrl + v 한다고 생각하면됨) 3dd를 이용해서 세줄을 지운 것도 p 한번으로 붙여넣기 가능함, 잘라내기 dd -> 붙여넣기 p 하면 자른후 붙여넣기임

 

(N)dd : N 행 삭제 (삭제가 되는 것 처럼 보이지만 실제로는 버퍼에 들어가 있기 때문에 p를 이용해서 붙여넣기 가능)
잘라내기 라고 생각하면됨 (ctrl + x) , vi에서 여러줄을 삭제하고 싶다면 (N)dd 를 사용하면 됨 (N은 숫자)

 

k :  커서가 한 줄 위로 올라감

j : 커서가 한 줄 아래로 내려감

l : 커서가 한칸 우측으로감

h : 커서가 한칸 좌측으로감

0 : 커서가 있는 줄의 맨 앞으로 감 (home 키라고 보면됨,숫자0)

$ : 커서가 있는 줄의 맨 뒤로 감 (end 키라고 보면됨)

( : 현재 문장의 처음

) : 현재 문장의 끝

{ : 현재 문단의 처음

} : 현재 문단의 끝

숫자- : 숫자 만큼 윗 줄로 이동

숫자+ : 숫자 만큼 아래 줄로 이동

G : 파일의 끝으로 이동, 대문자로 사용해야함 (Shift + g)

r : 한 문자 변경

cc : 커서가 있는 그 줄의 내용 변경

 

 

 

 

< 마지막 행 모드에서의 명령어들 >

esc 누르고, 콜론( : )을 누르면 나오는 상태, 명령어 + 엔터쳐야함

 

 

:w : 저장

:w파일명 : 입력한 파일명으로 저장

:q : 종료

:wq : 저장후종료

:q! : 강제종료

:wq! : 강제저장후 종료

:f파일명 : 파일이름을 파일명으로 변경 ex) B acb.txt

:숫자 : 입력숫자의 라인으로 커서이동

:e! : 마지막 저장이후 모든 편집 취소

:$ : 파일의 맨끝줄로 이동

:/문자열 : 현재커서위치 앞쪽으로 문자열 탐색

:?문자열 : 현재커서위치 뒷쪽으로 문자열 탐색

:set nu : vi 라인 번호 출력

:set nonu : vi라인번호 출력 취소

 

 

728x90
LIST