공부/Infra

nano, vim, vi

sesam 2025. 2. 4. 14:30
728x90

nano, vim, vi는 모두 Linux/Unix 환경에서 사용하는 텍스트 편집기입니다. 각 편집기의 특징과 차이점을 정리해 드리겠습니다.


🔹 1. nano

nano filename

✅ 특징:

  • 가장 간단한 텍스트 편집기
  • 초보자 친화적 (GUI 느낌이 있음)
  • 하단에 단축키 안내가 표시됨
  • 단축키 기반 (마우스 사용 가능)
  • 모드 없음 (즉시 입력 가능)

🔹 주요 단축키:

기능단축키

저장 (Write Out) Ctrl + O
종료 (Exit) Ctrl + X
잘라내기 Ctrl + K
붙여넣기 Ctrl + U
검색 Ctrl + W

🔹 언제 사용하면 좋을까?

  • Vim이나 Vi가 너무 복잡할 때
  • 빠르게 파일을 수정해야 할 때
  • 초보자나 GUI 환경에 익숙한 사용자를 위한 편집기

🔹 2. vi

vi filename

✅ 특징:

  • Unix 시스템에서 가장 오래된 기본 편집기
  • 모드 기반 편집기 (명령 모드, 입력 모드)
  • nano보다 기능이 강력하지만 사용법이 복잡함

🔹 모드:

모드 설명
명령 모드 기본 모드, 파일 탐색 및 명령 입력
입력 모드 텍스트 입력 가능 (i 또는 a로 진입)
명령줄 모드 :를 입력하여 저장, 종료 등 실행

🔹 주요 명령어:

기능 명령
입력 모드 진입 i (커서 앞), a (커서 뒤)
저장 후 종료 :wq
종료 (저장 안 함) :q!
한 줄 삭제 dd
복사 yy
붙여넣기 p
검색 /검색어

🔹 언제 사용하면 좋을까?

  • 기본적으로 모든 Unix 시스템에서 제공됨 (추가 설치 필요 없음)
  • 터미널 환경에서 가볍게 실행 가능
  • 빠른 수정이 필요할 때 (하지만 Vim보다는 기능이 적음)

🔹 3. vim (VI Improved)

vim filename

✅ 특징:

  • vi의 업그레이드 버전 (VI Improved)
  • vi의 모든 기능을 포함하면서 추가 기능 제공
  • 구문 강조(Syntax Highlighting) 지원
  • 멀티탭, 플러그인, 자동 완성 등 강력한 기능 제공
  • 마우스 사용 가능

🔹 주요 명령어 (vi와 동일하지만 더 많은 기능 제공)

기능 명령
입력 모드 진입 i 또는 a
저장 후 종료 :wq
종료 (저장 안 함) :q!
한 줄 삭제 dd
복사 yy
붙여넣기 p
검색 /검색어
여러 개의 파일 열기 :tabnew filename
구문 강조 켜기 :syntax on

🔹 언제 사용하면 좋을까?

  • vi보다 더 강력한 기능이 필요할 때
  • 프로그래밍/코딩에 적합한 텍스트 편집기가 필요할 때
  • Vim 플러그인 및 확장 기능을 활용할 때

📌 nano, vim, vi 비교 요약

편집기 초보자 친화적 모드 기능 주요 용도
nano ✅ 매우 쉬움 ❌ 없음 🔹 기본적인 편집 가능 빠르게 파일 수정
vi ❌ 어렵지만 기본 제공 ✅ 명령/입력 모드 🔹 가볍고 기본적인 기능 Unix 기본 텍스트 편집
vim ❌ 어렵지만 강력 ✅ 명령/입력 모드 🔹 vi보다 많은 기능 (구문 강조, 자동 완성 등) 프로그래밍, 고급 편집

✅ 결론: 언제 어떤 걸 사용해야 할까?

1️⃣ 초보자거나 간단한 편집을 원하면 → nano
2️⃣ 기본적인 Unix 환경에서 사용할 거면 → vi
3️⃣ 고급 기능을 원하고 프로그래밍할 거면 → vim

💡 간단한 파일 수정이면 nano, 깊이 있는 작업이면 vim 추천! 😊