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

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

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

  • 리눅스 명령행 인자(Command-Line Argument)와 명령어 옵션

    ‘리눅스 명령행 인자(Command-Line Argument)‘는 ‘리눅스 명령어 인수‘, ‘명령 인자‘ 등으로도 불리며, 리눅스 커맨드 라인에서 명령어를 실행할 때 프로그램에 전달하는 매개변수를 뜻 합니다. 리눅스에서 “매개변수(Parameters)”는 일반적으로 프로그램이나 함수에 전달되는 값을 가리킵니다. 이 값은 해당 프로그램이나 함수가 실행될 때 필요한 입력 값으로 사용됩니다. 컴퓨터 프로그래밍에서 “매개변수(Parameters)”는 함수에 전달되는 값을 받아들이는 변수를 의미합니다. 이는 함수 정의에…

  • [Linux] stat 명령어 : 파일&파일 시스템 확인

    리눅스 stat 명령어는 파일 및 파일 시스템의 상태를 보여주는 명령어입니다. 파일에 대한 자세한 정보가 필요할 때 사용합니다. 목차Ⅰ. vi vim 명령어 설명 및 3가지 모드Ⅱ. 리눅스 vi 명령어 정리1. vi 콘솔 명령어2. vi 커서 이동3. vi 라인 이동 명령어4. vi 편집 명령: 입력 모드 진입5. vi 텍스트 삭제 명령어6. vi 명령어 되돌리기(원복)7. vi…

  • 리눅스 명령어 13가지 카테고리 분류&시스템의 이해

    리눅스의 명령줄 인터페이스(Command Line Interface, CLI)는 컴퓨터 프로그램 및 운영체제와 상호 작용하기 위한 텍스트 기반의 사용자 인터페이스입니다. 리눅스 명령어는 유닉스 계열 운영체제어서 거의 동일하게 작동하며, 명령어를 입력해서 파일의 생성, 수정, 복사 이동 및 서버 전반에 걸친 관리를 하게 됩니다. 명령어를 카테고리로 분류하지만 틀릴 수 있는 점을 참고하여 주시기 바랍니다. 목차Ⅰ. vi vim 명령어…

  • 리눅스 cat 명령어

    리눅스에서 텍스트 파일을 출력하는 간단한 ‘cat 명령어’는 명령어 뒤에 파일명을 적어 표준 출력(Standard Output)을 할 수 있습니다. cat은 “연결시키다”, “연관시키다” 등의 뜻을 가지고 있는 영어단어 “concatenate”에서 유래되었습니다. 목차Ⅰ. vi vim 명령어 설명 및 3가지 모드Ⅱ. 리눅스 vi 명령어 정리1. vi 콘솔 명령어2. vi 커서 이동3. vi 라인 이동 명령어4. vi 편집 명령: 입력…

답글 남기기

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

Prove your humanity: 1   +   6   =