티스토리 뷰
반응형

리눅스 파일 편집기 - vim (대표적인 문서 편집기)
vi 편집기는 명령모드, 입력모드, 마지막 행 모드로 총 3가지 모드로 구성되어 있음
| 구분 | 명령 |
| 입력모드 | i, a |
| 명령모드 | |
| 1) 복사 | yy |
| 2) 붙이기 | p |
| 3) 삭제 | dd |
| 4) 저장 | ZZ |
| 5) 모드전환 | i, a, o, Esc |
| 마지막 행 모드 | 명령모드에서 : (콜론) 을 입력 |
vi 파일 저장 및 종료하기
| 명령키 | 설명 |
| :q | vi에서 작업한것이 없을때 vi 종료 |
| :q! | 작업한 내용을 저장하지 않고 종료 (강제종료) |
| :w[파일명] | 작업한 내용을 저장 파일명을 지정하면 새 파일로 저장 |
| :wq. :wq! | 작업한 내용을 저장하고 vi를 종료 |
| ZZ (대문자) | 작업한 내용을 저장하고, vi를 종료 |
vi 입력모드로 전환하기
vi 편집기에서 내용을 입력하려면 입력모드로 전환해야 함
| 모드 | 설명 |
| i | 현재 커서 앞에 입력 |
| a | 현재 커서 뒤에 입력 |
| o | 커서가 위치한 행의 다음 행에 입력 |
| I(대문자 i) | 커서가 위치한 행의 첫 컬럼으로 이동하여 입력 |
| A | 커서가 위치한 행의 마지막 컬럼으로 이동하여 입력 |
| O | 커서가 위치한 행의 이전 행에 입력 |
vi 커서 이동하기
vi에서는 마우스로 커서를 이동할 수 없고 오로지 키보드로만 커서를 이동
| 명령키 | 설명 |
| k | 커서를 위로 이동 |
| j | 커서를 아래로 이동 |
| h | 커서를 왼쪽으로 이동 |
| l | 커서를 오른쪽으로 이동 |
| ^ / O | 커서를 현재 행의 처음으로 이동 |
| :$ | 파일의 마지막 행으로 커서를 이동 (마지막 행 모드) |
| :행번호 | 지정한 행 번호로 커서를 이동 (마지막 행 모드) |
| 행번호G | 지정한 행 번호로 커서를 이동 |
| G | 파일의 마지막 행으로 커서를 이동 |
| e | 커서를 다음 단어의 마지막 글자로 이동 |
| b | 커서를 앞 단어의 첫 글자로 이동 |
| w | 커서를 다음 단어의 첫 글자로 이동 |
| L | 커서를 화면의 맨 아랫행으로 이동 |
| M | 커서를 화면의 중간 행으로 이동 |
| H | 커서를 화면의 맨 윗행으로 이동 |
| + / Enter | 커서를 다음 행의 처음으로 이동 |
| - | 커서를 한줄 위 처음으로 이동 |
| $ | 커서를 현재 행의 마지막으로 이동 |
vi 내용 수정하기
vi에서는 내용을 수정할 수 있는 다양한 명령어를 제공
| 명령키 | 설명 |
| r | 커서가 위치한 글자를 다른 글자로 수정 |
| cw | 커서위치에서부터 현재 단어의 끝까지 수정 |
| [수정할 단어 수]cw | 숫자cw는 커서 위치로부터 지정한 숫자의 단어 만큼 수정 |
| s | 커서 위치로부터 ESC키를 입력할때까지 수정 |
| [수정할 글자 수]s | 숫자s는 커서 위치로부터 지정한 숫자만의 글자를 수정 |
| cc | 커서가 위치한 행의 내용을 모두 수정 |
| C | 커서 위치로부터 행의 끝까지 수정 |
vi 내용 삭제하기
vi에서는 내용을 삭제할 수 있는 다양한 명령어를 제공
| 명령키 | 설명 |
| x | 커서가 위치한 글자를 삭제 |
| [삭제할 글자 수]x | x앞에 삭제할 글자수를 지정 |
| dw | 커서가 위치한 단어를 삭제 |
| [삭제할 단어 수]dw | dw앞에 삭제할 단어수를 지정 |
| dd | 커서가 위치한 행을 삭제 |
| [삭제할 행 수]dd | dd앞에 삭제할 행의수를 지정 |
| D | 커서 위치로부터 행의 끝까지 삭제 |
vi 범위 지정하기
vi에서는 위의 명령키를 입력하여 범위를 지정
| 명령키 | 설명 |
| 1, $, % | 1행부터 마지막 행까지 범위를 지정 |
| 1,. | 1행부터 커서가 있는 행까지 지정 |
| .,$ | 커서가 있는 행부터 마지막 행까지 지정 |
| .,.+2 | 현재 행과 두번째 아랫행까지 지정 |
| 10,20 | 10행부터 20행까지 지정 |
vi 내용 복사하기 / 잘라내기 / 붙이기
vi에서도 일반적인 편집기처럼 내용을 복사하거나 잘라붙이기도 가능
| 명령키 | 설명 |
| yy | 커서가 위치한 행을 복사 |
| [복사할 행 수]yy | yy앞에 복사할 행의 수를 지정 |
| dd | 커서가 위치한 행을 잘라내기 (삭제와 같은 명령어) |
| [잘라내기할 행 수]dd | dd앞에 잘라내기할 행 숫자를 입력 |
| p | 커서가 위치한 행의 아래쪽에 붙여넣기 |
| P(대문자) | 커서가 위치한 행의 위쪽에 붙여넣기 |
vi 내용 검색하기
vi에서도 문자열을 검색
| 명령키 | 설명 |
| /문자열 | 문자열을 커서 아래 방향으로 검색 |
| ?문자열 | 문자열을 커서 위 방향으로 검색 |
| n | 원래 방향으로 다음 문자열을 검색 |
| N | 반대 방향으로 다음 문자열을 검색 |
vi 내용 치환하기
문자열을 바꿀때에는 마지막 행모드로 전환을 해야만 사용이 가능
명령어 앞의 : 는 마지막 행모드로 전환하는 명령키
| 명령키 | 설명 |
| :s/[대상문자열]/[바꿀문자열] | 커서가 위치한 행에서 첫번째로 나오는 대상문자열을 바꿀문자열로 치환 |
| :%s[대상문자열]/[바꿀문자열] | 파일 전체에서 모든 대상문자열을 바꿀문자열로 치환 |
| :[범위]s[대상문자열]/[바꿀문자열] | 범위 내 모든 각 행에서 첫번쨰로 나오는 대상문자열을 바꿀문자열로 치환 |
| :[범위]s[대상문자열]/[바꿀문자열]g | 범위 내 모든 행에서 대상문자열을 바꿀문자열로 치환 |
| :[범위]s[대상문자열]/[바꿀문자열]gc | 범위 내 모든 행에서 대상문자열을 바꿀문자열로 치환 수정할 지 여부 확인 |
반응형
'Linux' 카테고리의 다른 글
| 리눅스 파일 개수 및 폴더 개수 세기 (0) | 2024.10.18 |
|---|---|
| 리눅스 권한 설정 (chmod, chown, chgrp) (1) | 2022.03.04 |
| 리눅스 scp 명령어 (서버 간 파일 복사) (0) | 2022.02.28 |
| 리눅스 크론탭(Linux Crontab) 시간설정 표현식 정리 (0) | 2022.02.27 |
| 리눅스 기본 명령어/자주 쓰는 명령어 (0) | 2022.02.24 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- java
- 멀티계정
- 오블완
- eclipse
- 이클립스
- 파이썬
- amazon eventbridge
- 폴더개수
- 모놀리식vsmsa
- 객체
- linux
- 오버로딩
- 다형성
- 리눅스
- 상속
- MSA
- springboot
- git계정
- msa전환
- jdk설치
- ssh-key
- smart tomcat
- 명령어
- 메소드
- 생성자
- 티스토리챌린지
- spring
- 자바
- AWS
- git계정여러개
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
글 보관함
