vi 편집기(1976, 빌조이->초기 BSD릴리즈에 포함될 편집기로 개발
- vi는 리눅스 환경에서 가장 많이 쓰이는 문서 편집기, 윈도우의 메모장과 같다.
- 리눅스 배포판과 유닉스에 기본적으로 포함되어 있다.
- 리눅스는 CLI(텍스트) 환경이기 때문에 단축키, 명령어 등을 알아야만 편집을 할 수 있다.
- vi 편집기는 여러가지 모드로 구성.
-명령모드(Command Mode) : 명령어를 입력해 vi의 다양한 기능을 사용할 수 있는 모드.
-명령라인모드(Command-line Mode), ex모드(Ex Mode) : ' : ' 뒤에 명령어를 입력하여 특수기능을 사용할 수 있는 모드.
- 편집모드, 입력모드(Insert Mode) : 메모장과 같이 텍스트를 자유롭게 편집할 수 있는 모드.
-비주얼모드(Visual Mode) : 윈도우즈의 드래그와 같이 문자를 다중 선택할 수 있는 모드. - 지속적인 vi 에디터 설정을 .exrc 파일에 설정.
- ---Vim ---
-브람 무레나르
-vi 편집기와 호환되면서 독자적으로 다양한 기능을 추가하여 만든 편집기.
-패턴 검색 시 하이라이트 기능을 제공하여 빠른 검색을 가능하게 해준다.
-ex모드에서 히스토리 기능을 제공.
-확장된 정규 표현식 문법과 강력한 문법 강조 기능을 가짐
명령모드
- ESC
입력모드
- i : 커서 앞(왼쪽)에 입력
- a : 커서 다음(오른쪽)에 입력
커서이동
- h, j, k, l: 좌,하,상,우 커서 이동 (방향 키가 없는 키보드에서 사용)
- ^ : 줄의 첫 문자로 이동
- 0 : 첫 번째 열로 이동
- gg: 제일 첫 행으로 이동
- w: 다음 단어의 첫 글자로 이동
- b: 이전 단어의 첫 글자로 이동
- H : (Head, shift + h)화면의 첫 줄로 이동
- M : (Middle, shift + m)화면의 중간으로 이동
- L : (Last, shift + l)화면의 끝 줄로 이동
- [Ctrl] + b : 이전 화면으로 이동 (= Page Up)
- [Ctrl] + d : 중간 화면으로 이동
- [Ctrl] + F : 다음 화면으로 이동 (= Page Down)
- G: 마지막 행으로 가기
- :숫자: 지정한 숫자 행으로 이동 ex) :3
- n% : 입력한 n 퍼센트에 해당하는 줄로 이동
- nG : n번째 행으로 이동
- << : 커서가 위치한 줄 맨 앞의 탭 제거
저장, 종료, 삭제
- :q : 종료
- :q! : 저장하지 않고 강제로 종료
- :w : 저장
- :wq : 저장 후 종료
- zz : 저장 후 종료(:wq와 동일)
- :w hagsig.txt : 파일의 변경내용을 hagsig.txt 이라는 파일이름으로 저장
- :w > > hagsig.txt : hagsig.txt 파일에 편집 중인 파일의 내용을 덧붙여서 저장
- :wq 파일이름 : 저장 후 파일 이름 지정
- x : (소문자) 커서에 있는 글자 삭제
- X : (대문자) 커서 앞에 있는 글자 삭제
- dw : 단어 삭제
- dd : 현재 커서의 행 삭제
- 숫자 dd : 현재 커서부터 숫자만큼의 행 삭제
복사, 붙여넣기
- yw : 커서를 기준으로 뒤에 있는 단어 글자 복사 (커서 포함)
- yb : 커서를 기준으로 앞에 있는 단어 글자 복사
- yy : 커서가 있는 라인(줄) 복사
- 숫자 yy : 현재 커서부터 숫자 만큼의 행을 복사
- p : (소문자) 커서 다음에 붙여넣기
- P : (대문자) 커서 이전에 붙여넣기
변경, 되돌리기
- :%s/old/new: 각 행의 처음 나오는 old를 찾아 new로 바꾼다.
- :%s/old/new/g: 모든 old를 찾아 new로 바꾼다.
- :%s/old/new/gc: 모든 old를 찾아 new로 바꾸기 전에 물어본다.
- u : 이전으로 되돌리기 (Undo)
- Ctrl + r : 되돌리기한 것을 다시 실행 (Redo)
출력, 검색
- :set number: 행번호를 출력 (= :set nu)
- :set nonumber: 행번호를 숨긴다. (= :set nonu)
- :cd: 현재 디렉토리를 출력
- /exp + enter : 'exp' 와 같은 문자열을 현재 커서가 위치한 곳부터 아래 방향으로 검색
- ?exp + enter : 'exp' 와 같은 문자열을 뒤에서부터 윗 방향으로 검색
- n : (소문자) 뒤로 검색
- N : (대문자) 앞으로 검색
- :args : 편집중인 파일 목록 표시
편집
- :n : 다음 파일 편집
- :prev : 이전 파일 편집
- :sh : 편집기 최소화(exit : 편집상태로 돌아올 수 있음)
>>>>문제
다음 중 vi 편집기에서 커서 키가 없는 자판 이용 시에 아래 방향으로 이동하기 위한 명령으로 알맞은 것은?
1. h
2. j
3. k
4. l
- h : 커서를 한칸 왼쪽으로 이동하는 명령
- j : 커서를 한줄 아래로 이동하는 명령
- k : 커서를 한줄 위로 이동하는 명령
- l : 커서를 한칸 오른쪽으로 이동하는 명령
다음 중 vi 편집기에서 행 번호가 표시되도록 하는 ex 모드 환경설정으로 알맞은 것은?
1. set no
2. set ai
3. set sm
4. set number
- set nonu : set nu 기능 off
- set ai : 자동 들여쓰기
- set sm : 괄호 입력시 자동으로 대응되는 괄호 표시
- set number : 행 번호 표시
다음 중 vi 편집기의 명령 모드에서 바로 직전에 삭제한 줄을 다시 복원하기 위해 실행하는 명령으로 알맞은 것은?
1. c
2. r
3. u
4. dd
'[스터디] 리눅스' 카테고리의 다른 글
[리눅스] fstab 파일 필드 (0) | 2023.05.31 |
---|---|
[리눅스] IaaS, PaaS, SaaS, DaaS 클라우드 서비스 (0) | 2023.05.30 |
[리눅스] 마스터2급 기출문제.3 (0) | 2023.05.25 |
[리눅스] 마스터2급 기출문제.2 (0) | 2023.05.23 |
[리눅스] 마스터2급 기출문제.1 (0) | 2023.05.22 |