728x90

■ 리눅스의 문서 편집기
- 리눅스의 편집기 종류
| 구분 | 종류 |
| 행 단위 편집기 | ed, ex, sed |
| 화면 단위 편집기 | vi, emacs |
| GUI 편집기 | gedit |
문서 편집기는 모드형과 비모드형으로 구분되어 있다.
모드형 : 입력 모드와 명령 모드가 구분되어 있음
비모드형 : 모드의 구분이 없음, 'ctrl'이나 'alt'로 편집 기능을 활용 (ex. 한글, 워드)
■ vi 사용법
- vi 동작 모드
# : 숫자 입력 가능

- vi 시작과 종료
| 명령키 | 기능 |
| vi [파일] | 파일을 연다, 없으면 빈 페이지 |
| :q, :q! | 종료 / 변경 내용 무시 후 종료 |
| :w, :wq, ZZ | 저장 / 저장 후 종료 |
- vi 모드 전환
| 명령키 | 기능 | 명령키 | 기능 | 명령키 | 기능 |
| i | 현재 커서 | a | 다음 커서 | o | 다음 행 |
| I | 행의 첫 칼럼 | A | 마지막 칼럼 | O | 이전 행 |
- 커서와 화면 이동
| 명령키 | 기능 | 명령키 | 기능 |
| k | 상 | j | 하 |
| l | 우 | h | 좌 |
| ^ | home | $ | end |
| G | 마지막 행으로 | #G | 지정한 행으로 |
| :# | 지정한 행으로 | :$ | 마지막 행으로 |
- 내용 수정
| 명령키 | 기능 | 명령키 | 기능 |
| r | 한 글자 | #cw | 커서 ~ 단어 끝 |
| #s | 커서 ~ esc | cc | 행 |
| C | 커서 ~ 행 끝 |
- 내용 삭제
| 명령키 | 기능 | 명령키 | 기능 |
| #x | 글자 | #dw | 단어 |
| #dd | 행 | D | 커서 ~ 행 끝 |
삭제한 내용들은 모두 버퍼에 저장이 된다!
- 명령 취소
| 명령키 | 기능 | 명령키 | 기능 |
| u | 취소 | U | 행 취소 |
- 복사 및 잘라 붙이기
| 명령키 | 기능 | 명령키 | 기능 |
| #yy | 행 복사 | p | 아래 행에 붙이기 |
| #dd | 행 잘라내기 | P | 위 행에 붙이기 |
언네임드 버퍼 : 복사하거나 잘라내기 할 경우 저장되는 한 개의 버퍼
네임드(숫자) 버퍼 : " + a~z (1~9) 입력으로 따로 저장하는 버퍼 (ex : a 버퍼에 저장 → "ayy )
- 검색 및 바꾸기 ( '/', '?' 입력)
| 명령키 | 기능 | 명령키 | 기능 |
| /문자열 | 아래 방향 검색 | ?문자열 | 위 방향 검색 |
| n | 다음 문자열 | N | 역방향 |
| :s/문자열1/문자열2 | 행의 첫 문자열 변경 | :%s/문자열1/문자열2/g | 파일 내 모든 문자열 변경 |
- 기타 유용한 명령키
| 명령키 | 기능 |
| :r [파일] | 커서에 파일 삽입 |
| :e [파일] | 파일 전환 (:w 필수) |
| :n | 다음 파일로 이동 |
| :! 셸 명령어 | vi 중단 후 셸 명령어 실행 (종료 - enter) |
| :sh | vi를 잠시 나가서 명령어 실행 (종료 - exit) |
- 기타 유용한 명령키2
| 명령키 | 기능 | 명령키 | 기능 |
| ctrl + l | 화면 재출력 | ctrl + g | 행 번호 출력 |
| J | 아랫 행과 연결 | . | 이전 명령 반복 |
| ~ | 대소문자 변경 |
■ vi 환경 설정
vi의 환경을 설정하는 데는 3가지 방법이 존재.
1. 사용자 홈 디렉터리에 .exrc 파일로 저장
2. 환경 변수 EXTINIT에 지정.
3. vi 마지막 행모드에서 명령으로 설정 (일시적, vi 종료 시 해제)
| 명령키 | 기능 |
| set (no)nu | 행 번호 표시 (감추기) |
| set (no)list | 보이지 않는 특수문자 표시 (감추기) |
| set (no)showmode) | 현재 모드 표시 (감추기) |
| set | set으로 설정한 모든 vi 환경 설정 값 출력 |
| set all | 모든 vi 환경 설정 값 출력 |
- 환경 설정 파일과 변수 이용
.exrc 파일 환경 설정 : 기본적으로 없는 파일이므로 만들어야한다. set 명령과 옵션을 지정해두면 모든 vi에 적용가능
EXINIT 환경 변수 설정 : 셸 환경 변수로 설정 (ex. EXINIT = 'set nu list')
'개인 공부 > Linux (CentOS 리눅스)' 카테고리의 다른 글
| CentOS 리눅스 : 셸 사용법 (4장) (0) | 2022.05.03 |
|---|---|
| CentOS 리눅스 : 연습문제 해답 (3장) (0) | 2022.05.02 |
| CentOS 리눅스 : 연습문제 해답 (2장) (0) | 2022.04.28 |
| CentOS 리눅스 : 디렉터리와 파일 사용법 (2장) (0) | 2022.04.28 |
| CentOS 리눅스 : 연습문제 해답 (1장) (0) | 2022.04.27 |
댓글