System/Linux

vi 편집기 vi editor 모드 단축키

JJuno 2018. 3. 13.

vi 에디터

  • Emacs와 함께 유닉스 환경에서 많이 쓰이는 문서 편집기 
  • 1976년 빌 조이가 초기 BSD 릴리즈에 포함될 편집기로 제작 
  • 줄 단위 편집기가 아닌 한 화면을 편집하는 Visual editor라는 뜻에서 유래 

 

명령 모드 (command mode)

  • vi의 기본 모드
  • 다른 모드에서 esc키를 누른 경우
  • 커서이동, 문자열 수정, Copy & Paste 가능
  • 키입력 시 명령이 바로 바로 실행됨
사용법 설명
^ 행의 처음으로 이동
$ 행의 마지막으로 이동
/ find 문자열 찾기
n 다음 문자열 찾기
N 이전 문자열 찾기
x 커서 위치의 한 문자 삭제
dd 현재 커서의 한 라인 삭제
dw 한 단어 삭제
yy 현재 커서의 한 라인 복사
p 커서 이후 라인에 붙여넣기
u 실행취소
Ctrl+R 다시실행
gg 페이지 맨 위로
G 페이지 맨 아래로
Ctrl+F 페이지 아래로
Ctrl+B 페이지 위로
v 비주얼 모드
V 비주얼 라인 모드
Ctrl+v 비주얼 블록 모드
~ 대소문자 전환
3G 3번째 라인으로 이동
r 한 문자 변경
R 수정모드
Ctrl+g 현재 편집중인 문서 정보
 

입력 모드 (insert mode)

  • 명령모드에서 특정키(a,i,o 등)를 눌러서 입력모드로 진입
  • 입력 모드 시 하단에 – INSERT – 라고 표시됨
사용법 설명
i 커서 위치에서 입력모드 진입
I 커서 위치 행의 시작점에서 입력모드 진입
o 커서 위치 아래 행에서 입력모드 진입
O 커서 위치 위 행에서 입력모드 진입
a 커서 위치 행의 끝에서 입력모드 진입
A 커서 위치의 뒤에서 입력모드 진입
 

실행 모드 (excute mode)

  • 명령모드에서 :, /, ? 기호로 진입함
  • 저장, 데이터 검색, 버퍼 이용 등 추가기능을 실행할 수 있는 모드
사용법 설명
:q 종료
:q! 강제 종료
:wq 파일 저장 후 종료
:w newfile newfile로 저장
:f 파일 정보 보기(Ctrl+G)
:e file file 열기
:%s/x/y/g 파일 전체에서 x를 y로 교체
:new 새 파일
:set 현재 설정된 옵션 보기
:set all 설정 할 수 있는 옵션 모두 보기 (no가 붙어있는건 on/off, =이 붙어있는건 숫자값)
:se[t] nu[mber] 라인넘버 보기
:3 3번째 라인으로 이동
:ab id342 JJuno id342를 JJuno으로 자동변환(상용구)
:unab id342 상용구 제거

 

728x90

댓글

💲 추천 글