티스토리 뷰
리눅스에서 가장 많이 사용하는 텍스트 에디터는 vi 에디터(정확하게 말하면 vim 에디터)입니다. 처음 배울 때는 어려워도 조금씩 알고나면 그만한 가치가 있는 프로그램이라 생각합니다. vi 에디터는 기능이 너무 많아서 한번에 다 공부하기는 어렵고 쓰면서 편리한 것 중심으로 익혀나가면 될 것 같습니다. 이 글은 자주 사용하는 것을 중심으로 정리하며 꾸준히 업데이트됩니다.
리눅스 vi 에디터 사용법 정리
vi 에디터를 사용하기 위해서는 명령모드와 입력모드의 차이를 알아야합니다. 입력모드는 메모장처럼 텍스트를 자유롭게 편집하는 모드이고, 명령모드는 말 그대로 다양한 명령을 내리는 모드를 말합니다. 처음 vi 에디터를 실행하면 명령모드로 시작을 합니다. vi 에디터 명령모드에서는 커서이동, 복사, 붙여넣기, 문자열 검색 등을 수행할 수 있습니다.
명령모드에서 입력모드로 전환
a : 커서 다음(오른쪽)에 입력
A : 행 마지막 부분에 입력
i : 커서 앞(왼쪽)에 입력
I : 행 처음 부분에 입력
o : 커서 밑에 빈 행을 추가하여 입력
O : 커서 위에 빈 행을 추가하여 입력
s : 커서에 있는 글자를 지우고 입력
입력모드에서 명령모드로 전환
ESC 키를 누른다.
저장, 종료하기
명령모드에서 : (콜론)을 이용하여 다양한 작업을 할 수 있다.
:q
종료한다.
:q!
저장하지 않고 그냥 강제로 종료한다.
:w
저장한다.
:wq
저장하고 종료한다.
ZZ
저장하고 종료한다. (:wq와 동일)
:wq 파일이름
저장할 때 파일이름을 지정할 수 있다.
(vi 에디터에서는 비정상 종료시 .swp 파일이 생성된다. 필요가 없으면 삭제)
커서 이동
h, j, k, l : 좌, 하, 상, 우 커서 이동 (방향 키가 없는 키보드에서 사용)
w : 다음 단어의 첫 글자로 이동
b : 이전 단어의 첫 글자로 이동
G : 마지막 행으로 가기
:숫자 : 지정한 숫자 행으로 이동. ex) :5
삭제
x : 커서에 있는 글자 삭제
X : 커서 앞에 있는 글자 삭제
dw : 커서를 기준으로 뒤에 있는 단어 글자 삭제 (커서 포함)
db : 커서를 기준으로 앞에 있는 단어 글자 삭제
dd : 커서가 있는 라인(줄) 삭제
dw, db, dd 명령 앞에 삭제할 숫자를 지정할 수 있다. ex) 3dw, 2db, 4dd
삭제 된 내용은 버퍼에 저장되어 붙여넣기가 가능하다.
복사
yw : 커서를 기준으로 뒤에 있는 단어 글자 복사 (커서 포함)
yb : 커서를 기준으로 앞에 있는 단어 글자 복사
yy : 커서가 있는 라인(줄) 복사
yw, yb, yy 명령 앞에 복사할 숫자를 지정할 수 있다. ex) 3yw, 2yb, 4yy
붙여넣기 (복사, 삭제된 내용을 붙여넣는다.)
p : 커서 다음에 붙여넣기
P : 커서 이전에 붙여넣기
찾기
/문자열 : 앞에서 부터 문자열을 찾는다.
?문자열 : 뒤에서 부터 문자열을 찾는다.
n : 뒤로 검색
N : 앞으로 검색
바꾸기
:%s/old/new
각 행의 처음 나오는 old를 찾아 new로 바꾼다.
:%s/old/new/g
모든 old를 찾아 new로 바꾼다.
:%s/old/new/gc
모든 old를 찾아 new로 바꾸기 전에 물어본다.
되돌리기(Undo), 다시실행(Redo)
u : 이전으로 되돌리기 (Undo)
Ctrl + r : 되돌리한 것은 다시 실행하기 (Redo)
자주 사용하는 기능들
:set number
행번호를 출력한다. (간단하게 :set nu)
:set nonumber
행번호를 숨긴다. (간단하게 :set nonu)
:cd
현재 디렉토리를 출력한다.
리눅스 man 명령어 사용법 정리 (리눅스 매뉴얼 확인 방법, 명령어 옵션 검색)
리눅스 find 명령어 사용법 정리 (파일, 디렉토리 검색, 찾기)
리눅스 locate 명령어 사용법 정리 (updatedb 명령어, mlocate 설치, 파일 검색)
- Total
- Today
- Yesterday
- 파이썬 연산자
- 게임기 만들기
- 추억의 오락실
- 리눅스 기초
- eclipse
- 리눅스
- 파이썬
- 파이썬 프로그래밍
- 파이썬 함수
- 파이썬 자료형
- 리눅스 cat
- 라즈베리파이 NAS
- mysql
- 라즈베리파이 활용
- 라즈베리파이
- 라즈베리파이 오락실
- raspberry pi
- PYTHON
- Android Programming
- Eclipse ADT
- 안드로이드 프로그래밍
- openmediavault
- 리눅스 설치
- Android Studio
- linux
- 파이썬 기초
- 리눅스 명령어
- 라즈베리파이 나스
- 이클립스 사용법
- jsp 프로그래밍
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |