본문 바로가기
Linux

Vi 편집기

by Nirah 2022. 10. 30.

 

vi  [옵션]  [경로/파일명]
입력한 파일명이 없으면 해당 파일명으로 새로운 파일이 생성되지만
입력한 파일명이 있으면 해당 파일이 open된다

 

 

 

-명령 Mode (Command Mode)
 # VI 실행시 기본적으로 적용되는 Mode
 # 커서를 이동하거나 파일 수정 , 삭제 , 복사 , 붙이기등이 가능한 Mode
 # 명령 Mode에서 i , a , o , O 등의 명령어를 사용하여 입력 mode로 전환할 수 있다.
 # 명령 Mode에서 ':' 명령어를 사용하여 실행 mode로 전환할 수 있다.
 # 입력 mode , 실행 mode에서 ESC키를 사용하여 명령 mode로 전환할 수 있다.

 

 

# 방향 이동

 j = 아랫 방향으로 1 line을 이동
 k = 윗 방향으로 1 line을 이동
 l = 오른쪽 방향으로 1 칸을 이동
 h = 왼쪽 방향으로 1 칸을 이동

 5j = 아랫 방향으로 5 line을 이동
 5k = 윗 방향으로 5 line을 이동
 5l = 오른쪽 방향으로 5 칸을 이동
 5h = 왼쪽 방향으로 5 칸을 이동


# word 단위 이동
 w = 다음 단어의 첫번째 문자열로 이동 (단어 , 공백 , 특수문자 기준)
 W = 다음 단어의 첫번째 문자열로 이동 (공백 기준)

 e = 다음 단어의 마지막 문자열로 이동 (단어 , 공백 , 특수문자 기준)
 E = 다음 단어의 마지막 문자열로 이동 (공백 기준)

 b = 이전 단어의 첫번째 문자열로 이동 (단어 , 공백 , 특수문자 기준)
 B = 이전 단어의 첫번째 문자열로 이동 (공백 기준)


# 행 단위 이동
 0 = 해당 Line의 첫번째 문자열로 이동
 $ = 해당 Line의 마지막 문자열로 이동
 : number = 입력한 숫자의 line number로 이동

 


# 문서 단위 이동
 gg = 문서 전체의 첫번째 line으로 이동
 G = 문서 전체의 마지막 line으로 이동
숫자+G = 몇번째 줄로 이동



# 문서 편집
 x = 커서를 기준으로 오른쪽 문자열 1개를 삭제 (delete)
 X = 커서를 기준으로 왼쪽 문자열 1개를 삭제 (backspace)
 dd = 커서가 위치한 1개 line을 삭제
 5dd = 커서가 위치한 line을 기준으로 밑으로 5개 line을 삭제
 yw = 커서를 기준으로 오른쪽 단어를 복사 (특수문자 , 공백을 기준으로 1개단어를 복사)
 yW = 커서를 기준으로 오른쪽 단어를 복사 (공백을 기준으로 1개단어를 복사)
 yy = 커서가 위치한 line을 복사
 5yy = 커서가 위치한 line을 기준으로 아래 5개 line을 복사
 p = 커서가 위치한 line을 기준으로 아랫 line에 붙어넣기 (단어를 복사한 경우 커서가 있는 line에 붙여넣기)
 P = 커서가 위치한 line을 기준으로 윗 line에 붙어넣기
 u = 실행 취소 (앞으로)
 Ctrl + r = 실행 취소 (뒤로)

 


===============================================================================

 


-입력 Mode (Insert Mode)
 # 명령 Mode에서 i , a , o , O 등의 명령어를 사용하여 입력 mode로 전환할 수 있다.

(ESC키를 사용하여 명령 mode로 전환)
 # 입력 Mode로 전환시 마지막 Line에 "--------------INSERT--------------" 문구가 출력된다.
 # VI Editor에 직접 설정이 가능한 Mode이다.  (명령 Mode에서도 일부 설정은 가능하다.)

 

 

================================================================================

 



-실행 Mode (Execute Mode)
 # 명령 Mode에서 ':' 를 사용하여 실행 Mode로 전환할 수 있다. (ESC키를 사용하여 명령 mode로 전환)
 # 설정 및 수정한 내용을 저장하거나 파일명 변경 , 확장명 변경 , 치환등이 가능하다.

 

 

:set number = 각 line의 첫번째 문자열에 line number를 붙여서 출력

(※ 팁이 있다면  /etc/virc 마지막 줄에 set nu 추가하면 vi편집기에 디폴트로 set number가 적용된다.)


 :w = 저장 (write)
 :q = 종료 (quit)
 :! = 강제 실행 (force)
 :q! = 강제 종료 (현재의 변경사항을 저장하지 않고 vi를 종료)
 :w! = 강제 저장

 :3 = 3번째 line으로 이동
 :5 = 5번째 line으로 이동

 :. = 현재 커서의 위치
 :.d = 현재 커서가 위치한 line을 삭제
 :10d = 10번째 line을 삭제
 :3,10d = 3번째 line부터 10번째 line까지 삭제
 :.,10d = 현재 커서의 위치부터 10번째 line까지 삭제

 :.y = 현재 커서가 위치한 line을 복사
 :10y = 10번째 line을 복사
 :3,10y = 3번째 line부터 10번째 line까지 복사
 :.,10y = 현재 커서의 위치부터 10번째 line까지 복사
 :.,+3y = 현재 커서의 line을 포함하여 밑으로 총 3개의 line을 복사

 

 

 

 

요약

 

================================================================================

 

번외

 

Vi 편집기에서 잠시 밖에 나오기 :!bash ->exit
/무궁화 편집기에서 무궁화 찾기. n키로 다음으로 넘어감
:.s/무궁화/해당화/g 해당 줄부터 무궁화를 해당화로 바꾼다. 해당 줄 끝까지.
:%s/무궁화/해당화/g 문서 전체 무궁화를 해당화로 바꾼다.
:3s/무궁화/해당화/g 
u / ctrl+r
se nu
:1,15d 1~15줄 삭제
:1,$d 1~끝까지 삭제
:r 경로 해당 파일 내용 첨부

 

 

 

'Linux' 카테고리의 다른 글

사용자 계정  (0) 2022.10.31
파일 압축 (compress)  (0) 2022.10.30
Linux 기본 명령어  (0) 2022.10.30
리눅스 초기 세팅  (0) 2022.10.30
리눅스 디렉토리 구조  (0) 2022.10.30