반응형
Notice
Recent Posts
Recent Comments
Link
«   2025/03   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
Tags
more
Archives
Today
Total
관리 메뉴

hann-blume

Linux - Vi Editor 본문

Linux

Linux - Vi Editor

hann-blume 2020. 2. 23. 21:23

 

 

 

Vi Editor는 문서 편집기이다.

 

# vi [편집할 파일이름/경로]

의 형식으로 사용한다.

 

Vi 편집기는 1976년 빌 조이가 초기 BSD 릴리즈에 포함될 편집기로 제작했다.

줄 단위 편집기가 아닌 한 화면을 편집하는 Visual editor 라는 뜻에서 유래했다.

명령, 실행, 입력모드가 있다.

 

명령모드

● Vi의 기본모드이다.

 Vi가 처음 실행되거나, 입력모드에서 ESC를 누른경우 

커서이동, 문자열 수정, Copy & Paste 등

엔터키를 누를 필요없이 각각의 명령에 따른 버튼을 누르면 바로 실행된다

 

입력모드

버퍼에 내용을 입력할 수 있는 모드

명령 상태에서 i,a,o 등의 키를 누르면 진입

하단에 --INSTERT--  라고 표시된다

●R을 누른 경우에는 --REPLACE-- 라고 표시된다

 

실행모드(EX모드)

● Vi에서 내가 명령을 내리고 싶을 때 명령을 입력할 수 있는 모드이다.

명령모드에서 키보드 ' : ' 를 누르면 실행모드로 진입한다.

 

 

명령모드에서 커서이동

KEY 동작
h 커서를 왼쪽으로 이동
j 커서를 아래로 이동
k 커서를 위로 이동
l 커서를 오른쪽으로 이동

 

 

단어단위 커서이동

KEY 동작
W,w 다음 단어의 처음으로 이동
E,e 단어의 끝으로 이동
B,b 단어의 처음으로 이동
dw w이동한 만큼 삭제[단어삭제]

 

 

행단위 커서이동

KEY 동작
0(Zero) 행의 처음으로 이동
$ 행의 마지막으로 이동

 

 

문서단위 커서이동

KEY 동작
G 문서의 마지막으로 이동
gg 문서의 처음으로 이동

 

 

입력모드로 전환

KEY 동작
i  현재 위치에서 입력모드로 변경
a 현재 위치에서 우측으로 한 칸 이동 후 입력모드로 변경
o 커서 아래에 새로운 행을 추가하고 입력모드로 변경

 

 

수정

KEY 동작
x 커서가 있는 문자 삭제 -> del
X 커서가 있는 앞 문자 삭제 -> backspace
dd 현재 커서의 행 삭제
숫자 + dd 현재 커서부터 숫자만큼 행 삭제
yy 현재 커서가 있는 라인을 복사
숫자 + yy 현재 커서부터 숫자만큼의 행을 복사
p 복사한 내용을 현재 커서라인 아래에 붙여넣기
P 복사한 내용을 현재 커서라인 위에 붙여넣기
u 이전으로 되돌리기 -> crtl+z

 

 

EX모드

치환

KEY 동작
:[범위]s/[Old]/[New]/[옵션] Old를 New로 치환

●범위는 n,m 혹은 %를 넣을 수 있다

%는 전체범위를 의미한다

●g옵션을 주면 적용되는 라인의 모든 부분 변경

●g옵션을 주지 않으면 각 행에서 처음 찾는 부분만 변경

 

1) 범위생략

:s/etc/tstory = 현재 커서라인의 'etc' 1개만 'tstory'로 변경

:s/etc/tstory/g = 현재 커서라인의 'etc' 전부 'tstory'로 변경

 

2) n(number)을 치환

:5s/etc/tstory = 5번째 줄에 있는 'etc' 를 'tstory'로변경

 

3) n번째 부터 m번째 까지

:5.10s/etc/tstory = 5번째부터 10번째에 있는 'etc' 를 'tstory'로변경

 

 

EX모드

파일관련

KEY 동작
:e [filename]   /    :e! 파일열기 / 파일강제열기
:enew 현재 창을 닫고 빈 문서를 연다
:q 종료
:q! 강제종료
:w          /   :w! 파일저장  / 강제저장
:wq 파일 저장 후 종료
:w[경로/파일이름] 다른 이름으로 저장

 

 

EX모드

파일 및 실행 관련

KEY 동작
:w >> [filename] filename에 내용추가
:f 현재 작업중인 파일의 이름과, 라인 수
:[n]r [filename] filename 파일 내용을 현재 편집중인 파일의 n 라인부터 삽입
:[n]r! [commend] Commend 실행결과를 파일의 n 라이부터 삽입

 

 

EX모드

ETC

KEY 동작
:set nu Line Number 활성화 (줄 번호)

 

 

 

 

 

여기까지 Vi Editor에 대한 설명이 끝났다.

반응형

'Linux' 카테고리의 다른 글

Linux - 허가권/소유권  (0) 2020.02.23
Linux - user/group 생성, 변경 ,삭제  (0) 2020.02.23
Linux - Commend  (0) 2020.02.23
리눅스의 주요 디렉터리 구조  (0) 2020.02.23
CentOS install  (0) 2020.02.23