[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

  • 리눅스 file 명령어

    리눅스 file 명령어는 그 파일이 어떤 파일인지 확인하는데 사용되는 명령으로 파일의 파일 타입을 확인할 때 사용합니다. 확인할 수 있는 파일은 텍스트 파일(ASCII 텍스트), 바이너리 파일, 그림 파일 및 동영상 등입니다. 단순하게 파일의 확장자만 확인하는 것이 아닌 파일의 매직파일(usr/local/magic)의 내용을 참조하여 파일 종류를 표시해 줍니다. magic 파일은 특정 파일의 형식을 식별하기 위한 정보를 담고…

  • 리눅스 tee 명령어

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

  • 리눅스 netstat 명령어, ifconfig 명령어

    리눅스에 netstat 명령어 및 ifconfig 명령어를 실행하기 위해 리눅스 서버에 명령어 실행을 위한 net-tools이 설치되어 있어야 합니다. 목차Ⅰ. vi vim 명령어 설명 및 3가지 모드Ⅱ. 리눅스 vi 명령어 정리1. vi 콘솔 명령어2. vi 커서 이동3. vi 라인 이동 명령어4. vi 편집 명령: 입력 모드 진입5. vi 텍스트 삭제 명령어6. vi 명령어 되돌리기(원복)7. vi…

  • 리눅스 백그라운드(Back Ground)&포그라운드(Fore Ground): 프로세스 제어하기

    리눅스의 프로세스는 백그라운드(Back Ground)와 포그라운드(Fore Ground) 두 가지의 모드로 작동됩니다. 리눅스 백그라운드 작업을 하는 이유는 일반적인 쉘 명령어를 실행했을 때 프로세스가 종료될 때까지 기다리면서 다른 작업을 하지 못하는 경우가 있기 때문입니다. 목차Ⅰ. vi vim 명령어 설명 및 3가지 모드Ⅱ. 리눅스 vi 명령어 정리1. vi 콘솔 명령어2. vi 커서 이동3. vi 라인 이동 명령어4….

  • [Linux] usermod 명령어

    usermod 명령어는 user modification(사용자 수정)의 약자로 이미 존재하는 사용자 계정의 속성을 변경할 때 사용됩니다. usermod는 사용자의 로그인 이름, UID (사용자 ID), 홈 디렉토리, 로그인 셸, 그룹 등의 속성을 변경할 수 있는 명령어입니다. 목차Ⅰ. vi vim 명령어 설명 및 3가지 모드Ⅱ. 리눅스 vi 명령어 정리1. vi 콘솔 명령어2. vi 커서 이동3. vi 라인 이동 명령어4….

  • 리눅스 Rsync 명령어

    Rsync (Remote Sync) 는 네트워크를 통해 파일과 디렉터리를 효율적으로 동기화하는 백업 방식입니다. 전체 데이터를 매번 복사하는 대신 변경된 부분만 증분 방식으로 전송하여 빠르고 안정적인 동기화를 지원합니다. 또한 다양한 옵션을 통해 압축, 암호화, 권한 유지, 삭제 동기화 등 세밀한 제어가 가능하며, 백업과 서버 간 데이터 전송에 널리 사용됩니다. 특히 네트워크 대역폭을 절약하고, 재 전송…

답글 남기기

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

Prove your humanity: 8   +   4   =