[Linux] 리눅스 vi 명령어 정리 | Vim 3가지 모드 및 비주얼 모드

리눅스 터미널에서 ‘.txt’, ‘.conf’ 등의 ASCII 파일을 편집하기 위해 vi 편집기 명령어를 사용합니다. vi 편집기는 명령모드 입력모드와 저장 및 종료 후 치환하는 리눅스 vi 명령어는 익숙해지면 매우 빠른 작업이 가능하기 때문에 효율적인 업무를 진행할 수 있습니다.

Ⅰ. vi vim 명령어 설명 및 3가지 모드

vi‘와 ‘vim‘은 둘 다 텍스트 편집기로서 리눅스 및 유닉스 기반 시스템에서 사용되는 명령어입니다.

Vi(Visual Editor)는 초기 버전의 텍스트 편집기이며, 유닉스 시스템에 기본으로 포함되어 있는 간단한 편집기입니다. 기본적인 기능만 제공한다고 할 수 있습니다.

Vim(Vi Improved)은 vi의 업그레이드 버전입니다. 기존 ‘vi’에서 향상된 기능을 가지고 있으며, 문법 강조, 자동 완성, 분할 창 등과 같은 다양한 고급 기능을 가지고 있습니다. 리눅스 터미널에서 vi를 입력했을 때 vim으로 자동 실행되는 경우는 보통 vim으로 심볼릭 링크가 설정되어 있기 때문이며, 많은 리눅스 배포판에 설정되어 있다고 볼 수 있습니다.

대부분의 리눅스 배포판에는 진짜 vi가 없으며, 대신 브람 무어나르(Bram Moolenaar)가 만든 Vim(Vi IMproved의 약자)이라고 하는 vi 확장판이 사용됩니다.

  • vi, vim 명령어
  • 텍스트 처리 명령어
  • vi 편집기 구조: 명령모드, 입력모드, 마지막행 모드로 구분
리눅스 vi 명령어 3가지 모드
  • vi 명령어 순서
  • vi 파일명(ex: httpd.conf)
  • 명령모드 진입
리눅스 vi 명령어-httpd.conf 파일 명령모드 진입
  • vi 명령어 순서
  • vi 파일명(ex: httpd.conf)
  • i 또는 Insert 키 입력 후 입력 모드 진입
리눅스 vi 명령어-httpd.conf 파일 입력 모드 진입
  • vi 명령어 마지막 행 모드
  • 콜론(:) 뒤에 set nu 명령어 입력 후 라인을 표시한 예시.
  • :wq 와 같은 명령어로 저장하고 나가기를 실행할 수 있음.
리눅스 vi 명령어-httpd.conf 마지막행 모드에서 set nu 명령어 입력

Ⅱ. 리눅스 vi 명령어 정리

1. vi 콘솔 명령어

콘솔 입력창에서 사용되는 기본 명령으로 vi [파일명]으로 많이 입력하며 옵션 사용이 가능합니다.

vi -옵션 [파일명]

2. vi 커서 이동

vim 커서 이동

3. vi 라인 이동 명령어

4. vi 편집 명령: 입력 모드 진입

5. vi 텍스트 삭제 명령어

6. vi 명령어 되돌리기(원복)

7. vi 복사 및 삽입 명령어

  • 한줄 복사 할 경우 ‘yy’ 명령어를 입력 후 ‘p’ 명령 실행해서 바로 아래에 삽입할 수 있습니다.

8. 행 번호 표시하기

# :set nu 또는 :set number 명령어로 행 번호를 표시할 수 있습니다.
 29 # ServerRoot at a non-local disk, be sure to specify a local disk on the
 30 # Mutex directive, if file-based mutexes are used.  If you wish to share the
 31 # same ServerRoot for multiple httpd daemons, you will need to change at
:set nu
## :set nonu로 행을 다시 숨길 수 있습니다. 
:set nonu

9. 검색 명령어

10. 저장 및 종료

11. 행모드 치환 명령어

Ⅲ. Vim 비주얼 블록 모드로 열(column) 일괄 치환

기존 명령라인 모드를 사용하면서 추가로 블록을 씌우고 싶을 때 사용하고 싶을 때 vim 비주얼 모드(Visual Mode)를 사용할 수 있습니다.

vim 비주얼 모드

비주얼 블록 모드

  • 비주얼 블록 모드 실행(Ctrl + v) 후
  • [Shit + i]를 눌러 Insert 상태 변경
  • 비활성화를 위해 # 입력 후
  • [Esc] 버튼을 두 번 누른 후 일괄 치환 완료

Similar Posts

  • Rsync 명령어: 옵션 | 사용 예시

    Rsync 명령어는 Remote sync의 줄임말로 원격에서 로컬, 로컬에서 로컬로의 파일 및 디렉토리를 복사하는 프로그램입니다. rsync에는 두 가지 접속 방법이 있는데 SSH를 통해 접속하는 방법과 rsync 데몬을 통해 접속하는 방법입니다. 목차Ⅰ. vi vim 명령어 설명 및 3가지 모드Ⅱ. 리눅스 vi 명령어 정리1. vi 콘솔 명령어2. vi 커서 이동3. vi 라인 이동 명령어4. vi 편집…

  • 리눅스: useradd 명령어 & passwd 명령어

    useradd 명령어는 리눅스에서 사용자의 ID(계정)를 생성하는 명령어입니다. root 권한으로 생성이 가능하며 기본적인 명령은 아래와 같습니다. 목차Ⅰ. vi vim 명령어 설명 및 3가지 모드Ⅱ. 리눅스 vi 명령어 정리1. vi 콘솔 명령어2. vi 커서 이동3. vi 라인 이동 명령어4. vi 편집 명령: 입력 모드 진입5. vi 텍스트 삭제 명령어6. vi 명령어 되돌리기(원복)7. vi 복사 및…

  • 리눅스 touch 명령어

    touch 명령어는 파일의 날짜 시간 정보를 변경하는 명령어입니다. 아무 옵션 없이 사용할 경우 파일의 최근 사용 시간, 변경 시간이 서버의 현재 시간으로 변경됩니다. 파일이 없는 파일명을 입력할 경우 새로운 크기가 0인 빈 파일이 생성됩니다. 목차Ⅰ. vi vim 명령어 설명 및 3가지 모드Ⅱ. 리눅스 vi 명령어 정리1. vi 콘솔 명령어2. vi 커서 이동3. vi…

  • 리눅스 killall 명령어: 설치, 사용 방법과 옵션

    리눅스 killall 명령어는 특정 프로세스를 한번에 종료 시키는 명령어입니다. kill과 killall은 단순 종료가 아닌 프로세스에 지정한 시그널(Signal)을 보내는 명령어로 시그널에서 액션이 종료일 때 프로세스가 종료됩니다. 목차Ⅰ. vi vim 명령어 설명 및 3가지 모드Ⅱ. 리눅스 vi 명령어 정리1. vi 콘솔 명령어2. vi 커서 이동3. vi 라인 이동 명령어4. vi 편집 명령: 입력 모드 진입5….

  • 리눅스 tee 명령어

    리눅스 tee 명령어는 배관시설에 비유해서 이름이 붙여진 명령어입니다. 파이프 모양과 똑같은 “T”에서 본따 tee 명령어이며 표준 출력으로 하나 이상의 다른 파일을 동시에 출력합니다. tee 명령어의 목적은 작업 진행 중 파이프라인(I)의 중간 내용을 알고 싶을 때 유용하게 사용할 수 있습니다. 목차Ⅰ. vi vim 명령어 설명 및 3가지 모드Ⅱ. 리눅스 vi 명령어 정리1. vi 콘솔…

  • [Linux] localectl 명령어

    CentOS 7 버전부터 많은 명령어들이 통합되어 제공됩니다. 로케일 및 키보드 관련 부문은 localectl 명령어에서 제공합니다. locale은 원래 지역이나 장소를 의미하지만, IT 환경에서는 언어 및 지역 설정을 지칭합니다. 리눅스에서는 문자 인코딩, 언어, 날짜/시간, 숫자 등의 지역화 설정을 locale 문자열로 정의합니다. 대부분의 유닉스 및 리눅스 배포판은 POSIX 기반이며, 이는 Red Hat 및 Debian 계열도 포함됩니다….

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 6   +   9   =