VI 이란
-
UNIX 계열 운영체제에서 주로 쓰이는 유서 깊은 오픈 소스 텍스트 에디터이다
-
처음에 쓰기 어렵지만 잘쓰게 되면 정말 편하다고 하는데 … 아직 잘 느끼지는 못하고 있다.
-
그래도 리눅스 환경에서 많은 경험을 하다보니까 vi를 자연스럽게 익혀야 해서 지금 공부하고 있다.
VI 편집기
모드
명령어 모드에는 3가지 모드가 있다.
- 명령라인모드
명령라인모드는
:통해서 진입할 수 있다.
보통 UI에서 사용하는 File 탭에 기능을 한다.
종료 , 저장, 저장후 종료 등 여러 기능을 수행한다. - 명령모드
vi 의 기본 모드 입니다. 처음에 편집을 할 수 없는 상태다.
하지만 다른 명령어들을 이용해서 복사 붙여넣기 같은 기본 적인 기능 부터 찾기 찾아바꾸기 맨 앞으로 이동, 맨끝으로 이동 등 여러가지 작업을 할 수 있다. - 편집모드
vi 에서 편집을 하려면 무조건
a혹은i명령어를 통해서 편집모드로 진입해야 한다.
이때부터 vi 편집기에서 편집이 가능하다.
명령어
명령라인모드
w: 저장q: 저장하지 않고 종료wq: 저장 후 종료q!: 강제 종료wq!: 강제 저장 후 종료명령모드
다른 모드로 진입
:: 명령라인모드로 진입i: 현재 커서에서 편집모드로 진입a: 현재 커서 뒤에서 편집모드로 진입o: 현재 커서에서 다음줄에서 편집모드로 진입s: 현재 커서에서 한글자 지우고 편집모드로 진입I: 현재 커서 줄의 맨 앞에서 입력A: 현재 커서 줄의 맨 뒤에서 입력O: 현재 커서 이전 줄에 입력S: 현재 커서줄 지우고 입력커서 이동
l: →h: ←k: ↑j: ↓gg: 맨 위로G: 맨 아래로숫자G: 숫자만큼 지정한 줄로 이동w: 오른쪽 단어의 끝으로 이동e: 오른쪽 단어의 앞 부분으로 이동b: 왼쩍 단어의 앞부분으로 이동Enter: 한 행 아래로 이동Back space: 한 문자 왼쪽으로 이동Space Bar: 한 문자 오른쪽으로 이동^: 행 맨왼쪽으로 이동$: 행 맨오른쪽으로 이동H: 화면 맨 위로 이동M: 화면 중간으로 이동L: 화면 맨 아래로 이동Ctrl + f: page upCtrl + b: page downCtrl + d: 반화면 위로 이동Ctrl + u: 반호면 아래로 이동Ctrl + e: 한줄위로 이동Ctrl + y: 한줄 아래로 이동변경
cw: 단어변경cc: 행변경C: 커서 오른쪽 행 변경s: 커서가 위차한 문자열 대체S: 커서가 위찬한 라인의 문자열 대체r: 커서 위치 문자를 다른 문자로 대체r-Enter: 행분리J: 현재행과 아래행 결합xp: 커서의 우치의 문자와 오른쪽 문자 교환~: 문자형 변경(uppercase lowercase 토글)u: 이전 명령 취소U: 행 변경 사항 취소:u: 이전의 최종 행 취소.: 이전 최종 명령 반복삭제
x: 커서가 있는 문자 삭제숫자x: 커서가 있는 위치부터 숫자만큼 문자 삭제dw: 커서가 있는 한 단어 삭제dd: 커서가 있는 라인 삭제숫자dd: 커서가 있는 라인부터 숫자만큼 라인 삭제db: 커서위치에서 왼쪽 한 단어 삭제D: 커서 오른쪽 행 삭제:숫자,숫자d: 숫자 ~ 숫자 행 삭제복사
yyY: 행 복사숫자yy숫자Y: 현재 행부터 숫자만큼 행 복사P: 라인 앞에 붙여넣기p: 라인 뒤에 붙여넣기행번호
:set nu / :setnonu: 행번호 표시 / 행번호 숨기기탐색
/: 오른쪽 아래 방향으로 문자열 검색?: 왼쪽 위 반향으로 문자열 검색