vi (1)
2025-09-12 15:32:13
반응형

📝 리눅스 문서 편집기 — vi

1. vi 모드 구조

```mermaid
graph TD
    A[명령 모드 (Command mode)] --> B[입력 모드 (Insert mode)]
    A --> C[마지막 행 모드 (Last line mode)]
    B --> A
    C --> A
```
 
 
  • 명령 모드: vi 실행 시 기본 모드 (복사, 삭제, 이동 등 명령어 실행)
  • 입력 모드: 글자를 입력하는 모드 (i, a, o 로 진입)
  • 마지막 행 모드: 저장·종료·검색 같은 명령 입력 (:wq, :q!)

2. 자주 쓰는 기본 명령어

동작명령
입력 시작 i (커서 앞), a (커서 뒤), o (새 줄)
저장 & 종료 :wq
강제 종료 (저장 안 함) :q!
이동 h(왼쪽), l(오른쪽), j(아래), k(위), :10(10번 줄 이동), G(파일 끝)
삭제 dd (한 줄 잘라내기)
복사 & 붙여넣기 yy (복사), p (붙여넣기)
검색 /문자열

3. 문서 편집기 실습

① 연습용 파일 생성

 
cd$HOME/proc # 실습 디렉토리로 이동 vi test.txt # vi 편집기 실행

입력 예시 (입력 모드에서 붙여넣기):

 
Welcome to vi editor practice This is a sample text file You can edit this file using vi Let's learn some basic commands The /etc/hosts file is important Try searching for the word hosts Delete this line and paste it below End of the practice file

② 파일 내용 확인

 
cat test.txt # 파일 전체 내용 출력

👉 cat은 파일 내용을 한 번에 보여줍니다.


③ 줄 번호 표시 & 특정 줄로 이동

 
:5 # vi에서 5번째 줄로 이동

👉 .exrc 설정에서 set nu를 추가하면 항상 줄 번호가 표시됩니다.


④ 삭제 & 붙여넣기

 
dd # 현재 줄 삭제 (잘라내기) p # 바로 아래 줄에 붙여넣기

⑤ 문자열 검색

 
/file # "file" 이라는 단어 검색

👉 / 입력 후 검색어 입력 → 해당 단어로 커서 이동


⑥ 저장 & 종료

 
:wq # 저장 후 종료 :q! # 저장하지 않고 강제 종료

⑦ .exrc 설정 파일 다루기

 
ls -a | grep exrc # .exrc 파일 존재 여부 확인mv .exrc .exrc.bak 2>/dev/null # 있으면 백업 vi .exrc # 새 설정 파일 생성

입력할 내용 (vi 설정):

 
set nu " 줄 번호 표시 set ignorecase " 검색 시 대소문자 무시 set autoindent " 자동 들여쓰기 set showmode " 현재 모드 표시 (--INSERT-- 등)

👉 저장 후 종료 (:wq)


⑧ 설정 적용 & 확인

 
vi ~/prac/test.txt
  • 줄 번호 확인 (set nu)
  • /hosts 검색 시 대소문자 무시되는지 확인 (set ignorecase)
  • 새 줄 입력 시 자동 들여쓰기 되는지 확인 (set autoindent)
  • 모드 표시 확인 (--INSERT-- 뜨는지 확인, set showmode)

4. 한 줄 한 줄 주석 설명

 
cat test.txt # 파일 내용을 터미널에 출력 :5 # vi 안에서 5번째 줄로 이동 dd # 현재 줄 잘라내기 p # 잘라낸 줄을 현재 커서 아래에 붙여넣기 /file # "file" 문자열 검색 :wq # 저장 후 종료

5. 현업에서 자주 쓰는 vi 활용 ✨

  • 서버 설정 파일 편집: /etc/nginx/nginx.conf, /etc/hosts 같은 시스템 설정
  • 로그 파일 빠른 수정: 긴 로그 파일에서 특정 키워드 검색 (/error)
  • 빠른 줄 이동: 에러 로그에서 특정 줄 번호 확인 후 :숫자로 이동
  • 복사/붙여넣기: 설정 블록을 잘라내어 다른 위치에 붙여넣을 때 yy, p 자주 사용
  • .exrc 자동 설정: 항상 줄 번호 표시, 검색 시 대소문자 무시, 자동 들여쓰기 → 현업 엔지니어들이 꼭 켜두는 옵션

 

.exrc 자동 설정 방법

vi ~/.exrc

set nu " 줄 번호 표시
set ignorecase " 검색 시 대소문자 구분 안 함
set autoindent " 자동 들여쓰기
set showmode " 현재 모드 표시 (--INSERT-- 같은 상태 표시)
ECS Key 눌러서 편집모드 종료
:wq! 로 저장 후 종료

반응형

'Cloud Engineering Bootcamp > 5. Linux' 카테고리의 다른 글

06. 프로세스 관리하기  (0) 2025.09.15
05. 파일 접근권한 관리하기  (0) 2025.09.15
03. Linux 명령어 정리  (0) 2025.09.12
02. Linux 기초  (0) 2025.09.12
01. 가상 서버 구축  (0) 2025.09.11