리눅스에서 설정 파일과 스크립트를 편집할 때 쓰는 텍스트 편집기를 정리한 문서이다. 서버에는 그래픽 환경이 없는 경우가 많아 터미널 편집기를 다룰 줄 알아야 한다.
| 편집기 |
특징
|
| ed |
줄 단위(라인) 편집기. 유닉스 초기의 표준 편집기
|
| ex |
ed를 확장한 줄 단위 편집기. vi의 명령행 모드가 ex 명령이다.
|
| vi |
빌 조이가 만든 화면 편집기. 모든 유닉스·리눅스에 기본으로 있다.
|
| vim |
브람 무레나르가 만든 vi 개선판(Vi IMproved). 문법 강조, 여러 단계 되돌리기, 분할 창
|
| emacs |
리처드 스톨먼이 만든 편집기. Lisp로 기능을 확장한다. Ctrl·Meta 조합 키를 쓴다.
|
| nano |
pico를 본뜬 간단한 편집기. 화면 아래에 단축키가 표시된다.
|
| pico |
메일 프로그램 pine에 들어 있던 편집기
|
| joe |
WordStar 방식 단축키를 쓰는 편집기
|
| gedit, kate |
X 윈도 환경의 GUI 편집기 (GNOME, KDE)
|
| 모드 |
들어가는 방법 |
하는 일
|
| 명령 모드 (일반 모드) |
시작할 때, 또는 Esc |
커서 이동, 삭제, 복사, 붙여넣기
|
| 입력 모드 |
i, a, o, I, A, O 등 |
글자 입력
|
| 명령행 모드 (ex 모드) |
: / ? |
저장, 종료, 검색, 치환, 설정
|
- i : 커서 앞, a : 커서 뒤, I : 줄 맨 앞, A : 줄 맨 끝
- o : 아래에 새 줄, O : 위에 새 줄
- s : 한 글자 지우고 입력, S(cc) : 줄을 지우고 입력
- h j k l : 왼쪽, 아래, 위, 오른쪽
- w / b : 다음 / 이전 단어, 0 / ^ / $ : 줄 처음 / 첫 글자 / 끝
- gg / G : 파일 처음 / 끝, nG 또는 :n : n번째 줄
- Ctrl+f / Ctrl+b : 한 화면 아래 / 위, Ctrl+d / Ctrl+u : 반 화면 아래 / 위
- H / M / L : 화면 맨 위 / 가운데 / 맨 아래
- x : 글자 삭제, dw : 단어 삭제, dd : 줄 삭제, ndd : n줄 삭제, D : 커서부터 줄 끝까지 삭제
- yy : 줄 복사, nyy : n줄 복사, yw : 단어 복사
- p / P : 커서 아래(뒤) / 위(앞)에 붙여넣기
- u : 되돌리기, Ctrl+r : 다시 실행, . : 직전 명령 반복
- J : 다음 줄을 현재 줄에 잇기, r : 한 글자 바꾸기, ~ : 대소문자 바꾸기
| 명령 |
의미
|
| :w, :w 파일명 |
저장, 다른 이름으로 저장
|
| :q, :q! |
종료, 저장하지 않고 강제 종료
|
| :wq, :x, ZZ |
저장하고 종료
|
| :e 파일명 |
다른 파일 열기
|
| :r 파일명 |
파일 내용을 커서 아래에 삽입
|
| :!명령 |
셸 명령 실행
|
| /문자열, ?문자열 |
아래 / 위로 검색. n은 같은 방향, N은 반대 방향으로 다음 찾기
|
| :s/old/new/ |
현재 줄에서 처음 나온 것 치환
|
| :%s/old/new/g |
파일 전체에서 모두 치환
|
| :5,10s/old/new/g |
5~10번째 줄에서 치환
|
| :set nu, :set nonu |
줄 번호 표시 / 해제
|
| :set ai, :set list |
자동 들여쓰기, 탭·줄 끝 문자 표시
|
| :syntax on |
문법 강조 (vim)
|
| :sp, :vs |
창 가로 / 세로 분할 (vim)
|
- 설정 파일 : ~/.exrc (vi), ~/.vimrc, /etc/vimrc (vim)
- C는 Ctrl, M은 Meta(Alt 또는 Esc)이다.
- C-x C-f : 파일 열기, C-x C-s : 저장, C-x C-w : 다른 이름으로 저장, C-x C-c : 종료
- C-f / C-b / C-n / C-p : 오른쪽 / 왼쪽 / 아래 / 위
- C-a / C-e : 줄 처음 / 끝, M-< / M-> : 파일 처음 / 끝
- C-d : 글자 삭제, C-k : 줄 끝까지 잘라내기, C-y : 붙여넣기, C-_ 또는 C-x u : 되돌리기
- C-s / C-r : 앞 / 뒤로 검색, M-% : 치환
- Ctrl+O : 저장, Ctrl+X : 종료, Ctrl+W : 검색, Ctrl+\ : 치환
- Ctrl+K : 줄 잘라내기, Ctrl+U : 붙여넣기, Ctrl+G : 도움말
- 환경 변수 EDITOR, VISUAL에 편집기를 지정하면 crontab -e, visudo, edquota 같은 명령이 그 편집기를 연다.
$ export EDITOR=vim
- vi의 세 가지 모드와 전환 키
- 치환 명령 :%s/old/new/g와 범위 지정
- 편집기와 개발자 연결 (vi 빌 조이, vim 브람 무레나르, emacs 리처드 스톨먼)
- emacs의 C-x C-s(저장), C-x C-c(종료)