본문 바로가기

웃음프로젝트의 하루/경험과 노하우

Vi editor 명령어

< Vi editor 명령어 >

 

편집모드 (i,o 등로 입력할 수 있는 상태)

명령 모드(편집모드에서 esc key를 누른상태)

기     타


 <삽입>


  A    현재라인의 끝부터 문자 삽입

  a    커서 다음부터 문자 삽입

  I    현재라인의 처음부터 문자 삽입

  i    커서 이전부터 문자 삽입

  O    커서의 윗라인에 새로운 라인첨가

       (처음부터 문자 삽입)

  o    커서의 아래 라인에 새로운 라인첨가

       (처음부터 문자 삽입)


 <치환>


  r    커서위치의 한문자 치환

  R    커서위치에서부터 계속 치환

  cw   한 단어 치환

  C    한 라인 치환

  c$   현재부터 라인끝까지 치환

  cG   현재부터 파일끝까지 치환

  cL   현재부터 화면 끝까지 치환

  c)   현재 구 치환

  c}   현재 절 치환

  ~    소문자와 대문자 서로 치환

  xp   두 문자 자리바꿈


 <이동>


  n>>  n(숫자)만큼 이동


 <기타>


  CTRL + I  tab 입력

  CTRL + p  최근 사용명령어 출력

  CTRL + u  커서 윗라인 지우기

  CTRL + y  커서 윗라인 문자를 한자씩 복사

  CTRL + e  커서 아래라인 문자를 한자씩 복사

  CTRL + w  커서이전 문자 워드 단위로 삭제

  CTRL + m  한줄 띄우기

  CTRL + n  최근에 사용한 명령어(라인) 출력


 <커서이동>


  j(아래), k(위), h(왼쪽), l(오른쪽) 이동

  최근에는 방향키로 이동가능

  ^    현재행의 시작위치로 이동

  $    현재행의 끝으로 이동

  +    커서의 다음행 처음으로 이동

  -    커서의 윗행 처음으로 이동

  (    커서의 이전구로 이동

  )    커서의 다음구로 이동

  {    커서의 이전절로 이동

  }    커서의 다음절로 이동


 <화면이동>


  SHIFT + g   파일의 끝으로 이동

  SHIFT + h   현재 화면의 처음으로 이동

  SHIFT + m   현재 화면의 중간으로 이동

  SHIFT + l   현재 화면의 끝으로 이동 (L)

  CTRL + d    반화면 아래로 이동

  CTRL + u    반화면 위로 이동

  CTRL + f    한화면 아래로 이동

  CTRL + b    한화면 위로 이동


 <삭제>


  x    커서의 다음방향 한문자 삭제

  X    커서의 이전방향 한문자 삭제

  dw   커서의 다음방향으로 한단어 삭제

  dW   커서의 이전방향으로 한단어 삭제

  dd   한 라인 삭제

  d0   커서위치부터 라인의 시작까지 삭제

  d$   커서위치부터 라인의 끝까지 삭제

  dG   커서위치부터 파일의 끝까지 삭제

  dL   커서위치부터 화면 끝까지 삭제

  nD   커서위치부터 n(숫자) 라인만큼 삭제

  d)   현재구 삭제

  d}   현재절 삭제


 <복사>


  yw   커서위치의 한단어 복사

  yy   커서위치의 한 라인 복사

  y$   현재부터 라인 끝까지 복사

  yL   현재부터 화면 끝까지 복사

  yG   현재부터 파일 끝까지 복사

  y)   구 복사

  y}   절 복사

  P    커서 이전열에 삽입 (INSERT)

  p    커서 다음열에 삽입 (INSERT)


 <문자열 검색>


  /검색할문자열   아래로 검색

  ?검색할문자열   위로 검색

  n    다음 일치하는 문장으로 이동(아래)

  N    다음 일치하는 문장으로 이동(위로)


 <저장, EXIT>


  :w   파일저장

  :w 파일명   지정한 파일명으로 파일저장

  :wq!   파일 저정하고 나가기

  :q  파일 나가기(변경 안했을 경우)

  :q!    무조건 저장안하고 나가기


 <기타>


  :f   파일정보 출력

  :nu  현재 라인정보 출력

  :!(cmd)  shell명령 실행

  :set nu  라인 NUMBER 출력

  :set nonu  라인 NUMBER 감추기