[Linux] 리눅스 vi편집기 사용법 총정리 (명령모드, 입력모드, 라인모드)

Linux-Linux 텍스트 편집기 종류-vi 편집기 사용법-vi 편집기의 3가지 모드-라인 모드-입력 모드-커서 및 화면 이동-텍스트 삭제 명령-텍스트 변경(혹은 치환) 명령-텍스트 복사/붙이기-블록 지정-명령 취소와 기타 명령-검색 명령-검색과 치환(치환) 리눅스 텍스트 편집기 종류

나무위키, Emacsgedit GNOME 데스크톱에서 제공하는 작고 가벼운 편집기로 X윈도우 기반이기 때문에 X윈도우를 사용하지 않는 서버 기본 텍스트 모드에서는 사용할 수 없습니다.- 그래픽 모드로 부팅된 X 창에 기본 GUI 편집기

emacs Editor Macros의 약자로 리처드 스톨먼이 매크로 기능이 있는 텍스트 교정 및 편집기로 개발하였습니다.1970년 중반부터 개발이 시작되어 2021년 현재도 활발하게 개발되고 있으며 역사가 긴 만큼 다양한 버전이 있지만 가장 인정받는 버전은 gnueMACS로 현재 GNU Project가 관리하고 있는 버전입니다. 이외에도 XEmacs, Aquamacs 등 다양한 버전이 존재합니다. – UNIX 기반 시스템에 있는 완전한 기능을 갖춘 에디터 – 강력하고 다양한 기능과 고급 기능을 갖춘 에디터 – 다양한 기능 지원을 위한 단축키의 종류가 많고 복잡해 사용법이 어렵다.

vivi는 Emacs와 함께 유닉스 환경에서 가장 많이 사용되는 문서 편집기입니다. 1976년 빌 조이가 초기 BSD 릴리스에 포함되는 편집기로 만들어졌습니다. 최근 실제 대부분의 링스 배포판은 과거 유닉스에서 사용되었던 vi의 개선된 버전인 vim을 제공하며 vi 명령은 vim으로 에리어스 되고 있습니다. vi는 Visual에서 따온 이름이고 vim은 Vi Improved의 약자입니다.- 유닉스 계열 운영 체제에서 가장 일반적인 화면 편집기 -vi는 ‘vim’으로 에리어스 되어 있음 -vim의 vi와의 차이점: 마우스 지원, 멀티undo, 멀티탭(혹은 화면 분할), 비주얼 모드 지원

vi편집기 사용법 vi편집기 실행 – 터미널 창의 셸 프롬프트에서 명령 입력 – 모듈편집기에서 다른 작업을 수행할 수 없음 – 라인 첫 칸에 표시되는 틸드(~) 표시는 텍스트가 없음을 의미 – 파일 작성 & 편집하기

vi편집기의 3가지 모드 설명 명령 모드 vi를 실행하면 처음 접하는 기본 모드에서 커서 이동, 수정, 삭제, 복사/붙이기, 탐색 등의 역할을 수행합니다.- 입력모드에서 [ESC] 키를 누르면 명령모드로 전환 입력모드 입력모드 이외에도 편집모드, inputmode, insertmode 등으로 불리며 문자를 입력하는 문서편집기 역할을 합니다.- 명령 모드에서 i, a, o, c키를 누르면 입력 모드로 전환되는 -insert, ad, openaline, change – 하단에 -INSERT -로 표시됨 · i : 현재 커서 앞에 입력라인 모드 명령 모드에서 : 키를 입력했을 때 화면 맨 앞줄에서 명령을 수행하는 모드로 저장, 종료, 탐색, 치환 및 vi 환경설정 등의 역할을 합니다.- 명령 모드에서 [:] 키를 누르면 라인 모드로 전환 라인 모드 vi 파일의 저장 및 종료 및 커서 이동 명령어 설명:q 종료-vi에서 작업한 내용이 없을 때 vi를 종료합니다.:q! 저장하지 않고 강제 종료 – 작업한 내용을 저장하지 않고 종료합니다.:w[파일 이름]보존-작업한 내용을 저장만 있습니다. 파일 이름을 지정하면 새 파일에 저장합니다.:wq:wq. 저장 후 종료-작업한 내용을 보존하고 vi를 종료합니다.:x:x!저장 후 종료-작업한 내용을 종료하고 vi를 종료합니다.:x[파일 이름] 다른 이름으로 저장-현재 파일의 내용은 저장되지 않고 다른 이름으로 새 파일에 저장됩니다.:x![파일 이름] 다른 이름으로 저장-현재 파일의 내용은 저장되지 않고 다른 이름으로 새 파일에 저장됩니다.같은 이름의 파일이 잇움뇨 덮어씀:헹봉호 지정한 행 번호로 커서를 이동합니다.:$파일의 마지막 행에 커서를 이동합니다.입력 모드, 단순 텍스트 편집 모드 초기 명령 모드에서 입력 모드로 이동하여 입력이 가능하지만, 명령 모드에서 아래 키로 입력 모드로 전환이 가능합니다.※입력 모드로[ESC]를 누르면 명령 모드로 전환면 료은키 설명 a현재 커서 뒤에 텍스트 입력-현재 커서 위치의 오른쪽 A, 커서가 위치한 행의 끝에 텍스트 입력 i커서 위치에서 텍스트 입력 I커서가 위치한 행의 처음에 텍스트 입력 o, 커서가 위치한 행의 다음 줄에 텍스트 입력 O, 커서가 위치한 행의 이전 행에 텍스트 입력

명령 모드 커서 이동, 수정, 삭제, 카피/부착, 탐색

커서, 화면 이동 명령어 설명 k커서를 위에 이동 j커서를 아래로 이동 h커서를 왼쪽으로 이동 l커서를 오른쪽으로 이동 w커서를 다음 단어의 첫 글자로 이동-단어의 구분: 빈 칸, 탭, 구두점(마침표 쉼표, 하이픈, 슬래시, 콜론, 물음표,.)W커서를 다음 단어의 첫 글자로 이동-단어의 구분: 빈 칸, 탭 b커서를 앞의 단어의 첫 글자로 이동-단어의 구분: 빈 칸, 탭, 구두점(마침표 쉼표, 하이픈, 슬래시, 콜론, 물음표,.)B커서를 앞의 단어의 첫 글자로 이동-단어의 구분: 빈 칸, 탭 0커서를 현재 라인의 첫칸에 이동$커서를 현재 라인의 마지막 차량으로 이동 커서를 이전 행의 첫칸에 이동+[Enter]키 크고를 다음 행의 첫칸에 이동 H카솔을 화면에서 최초의 라인으로 이동 M커서를 화면에서 중간 라인으로 이동 L커서를 화면에서 마지막의 라인으로 이동 Ctrl+u커서를 한페이지 위로 이동 Ctrl+d커서를 한페이지 아래로 이동[Page Up]키 Ctrl+f커서를 한페이지 위로 이동[Page down]키 Ctrl+b커서를 한페이지 아래로 이동 Ctrl+y의 화면을 한줄 위로 이동 Ctrl+e화면을 한줄 아래로 이동 gg처음 라인으로 이동 G마지막 라인에 이동헹 번호 G지정한 행 번호로 커서를 이동

텍스트 삭제 명령의 명령 모드에서 텍스트를 삭제하거나 변경 명령어 설명 x커서 위치의 한 문자를 삭제 번호 x커서 위치에서 해당 숫자만 문자를 삭제 dw커서 위치에서 다음의 단어까지 삭제 번호 dw커서 위치부터 해당 숫자만큼 단어 삭제 d-D커서 위치에서 현재 라인의 끝까지 삭제 d0커서 왼쪽부터 현재 라인의 초까지 삭제 d^커서 왼쪽부터 현재 라인의 초까지 삭제-라인 앞의 빈 공간은 삭제하지 않기 dd현재, 라인 삭제 번호 dd현재 라인에서 해당 숫자 정도의 라인을 삭제 dG, 현재 라인에서 파일의 끝까지 삭제 d번호 G, 현재 라인에서 해당 라인 번호까지 삭제 dH, 현재 라인에서 화면의 앞까지 삭제 dL, 현재 라인에서부터 화면 끝까지 삭제

텍스트 변경(또는 치환)명령 텍스트를 삭제 후 변경하고 입력 모드로 전환됨 명령어 설명 r커서 위치에 한 글자가 대치-입력 모드로 전환 R커서 위치에서 계속 대립-입력 모드이지만, 대립 모드로 내용이 계속 변한 sd의 커서 위치의 문자가 삭제-입력 모드로 전환 Scc현재 라인에 존재하는 문자 삭제-현재 라인에서 입력 모드로 전환 c$C커서 위치에서 라인의 끝까지 삭제-입력 모드로 전환 c0커서 왼쪽부터 라인 앞까지 삭제-입력 모드로 전환 cw커서 위치에서 단어의 끝까지 삭제-입력 모드로 전환 cb커서 왼쪽에서 단어 앞까지 삭제-입력 모드로 전환 c)커서 위치에서 문자의 끝까지 삭제-입력 모드로 전환 c}의 커서 위치에서 문단의 끝까지 삭제-입력 모드로 전환 cG, 현재 라인에서 파일의 끝까지 삭제-입력 모드로 전환 cH, 현재 라인에서 화면의 앞까지 삭제-입력 모드로 전환 cL, 현재 라인에서부터 화면 끝까지 삭제-입력 모드로 전환

텍스트 복사/부착 복사한 내용은 P또는 p명령을 이용해서 붙일 수 있는 것 명령어 설명 yy현재 라인을 카피 번호 yy현재 라인에서는 해당 숫자만큼 라인을 카피 yw커서 위치에서 다음 단어 앞까지 복사 y$커서 위치에서 라인의 끝까지 복사 y0커서 왼쪽에서 단어 앞까지 복사 y^커서 왼쪽에서 단어 앞까지 복사-전의 빈 공간은 복사하지 않기 yG, 현재 라인에서 파일의 끝까지 복사 y번호 G, 현재 라인 라인 번호까지 복사 y)커서 위치에서 한 문장을 복사 y}커서 위치에서 일단락을 카피 P단어 복사:커서 왼쪽에 붙임 라인 카피:커서 위 라인에 붙인 p단어 복사:커서의 오른쪽에 붙임 라인 카피:커서의 근원라인에 붙임

블록 지정 v 또는 V 명령을 사용하여 문자 또는 라인 단위로 지정 블록을 지정하고 삭제(x) 또는 복사(y) 후 P 또는 P 명령으로 붙여넣을 수 있는 명령어 설명 v 비주얼 모드에서 한 번에 한 글자씩 선택 V 비주얼 모드에서 한 번에 한 라인씩 선택

명령 취소와 기타 명령 설명 u 이전 변경 작업 취소(und) Ctrl+r 전에 취소한 작업 다시 진행 – Windows에서 Ctrl+z와 동일:e! 마지막으로 저장한 내용 이후의 것 모두 취소 J:j 현재 라인과 아래 라인 맞추기: !commandvi를 사용하여 셸 명령 command 수행: shvi를 잠시 빼고 셸 명령으로 exit을 실행하면 다시 vi로 돌아가기: senu 화면 좌측에 라인 번호 표시: senonu 화면 좌측에 라인 번호 표시 없앤다.

검색 명령한 라인으로 검색할 때 명령 모드에서 f를 사용 세미콜론(;)을 사용하여 검색을 반복하여 정규식을 사용할 수 있는 명령어 설명 f 패턴 현재 라인에서만 패턴 검색/pattern 순방향으로 패턴을 검색하여 커서를 이동/pattern/+num 패턴을 검색하고 그 후 (+) n번째 라인으로 이동?pattern 역방향으로 패턴을 검색하여 커서를 이동?pattern?-num 패턴을 검색하여 그 전 (-) numpattern 이전 검색을 같은 방향으로 반복하여 N/{N}: 안에 포함된 문자 중 하나와 매칭

ex) 중간문자를 생략하고 찾기/문자열.*문자열ex)print와 Print를 역방향으로 검색? [pp]rint

검색과 대치 문자열을 검색하고 대치(치환)하는 기능 : [g] [adress]s/문자열/바꾸는 문자열 [/option] [g] [adress]는 검색 범위로 %는 전체이며, 예를 들어 /pine/은 커서 다음에 나오는 pine을 포함한 하나의 라인, g/pine/은 pine을 포함한 모든 라인을 대상으로 하는 s는 문자열을 찾아 문자열로 대체하는 연산 마지막 옵션이 생략되면 겁 많은 라인에서 첫 번째

error: Content is protected !!