덮어쓰기
r : 커서 위치한 곳의 문자를 다른 한 문자로 교체
R : 현재 커서 위치에서부터 ESC를 칠 때까지 계속 덮어쓰기
s : 현재 커서 위치에 있는 문자를 $로 변경하고 ESC를 칠 때 까지 계속해서 문자 삽입
단어 바꾸기
cw
현재커서 위치로부터 그 단어의 마지막까지 수정, 수정 후 ESC를 누르면 된다.
라인 바꾸기
cc
현재 커서가 위치한 라인 내용을 모두 바꿈
라인은 공백으로 변경되고 공백에 변경할 내용 입력한다.
입력이 종료되면 ESC키를 눌러 변경이 종료됨을 vi에게 알려야 한다.
C 또는 c$
현재 커서 위치에서 왼쪽 내용을 변화시키지 않고 오른쪽 내용을 모두 바꾼다.
그 라인의 가장 끝에 있는 문자가 $로 표시되어 수정가능 영역을 표시해준다.
수정 후 ESC를 누르면 된다.
~
대문자는 소문자로 소문자는 대문자로 바꾸어주는 명령어이다.
:g/text/s//aftertext/g
파일 내 모든 text 문자열을 aftertext로 바꾼다.
:g/text/s//aftertext/gc
변경할 때 마다 변경할건지 물어본다.
변경 원하면 y입력 후 엔터키, 변경 원하지 않으면 n입력 후 엔터키
검색 종료하려면 ctrl + c
명령어 취소
u
버퍼에서 변경했던 마지막 명령을 그 이전의 상태로 돌린다.
대문자 U
현재 라인에서 수정한 모든 사항을 취소한다.
명령어 반복
.
바로 이전에 수행되었던 명령어를 한번 더 반복한다.
복사하기
yw
현재 커서가 위치한 단어를 버퍼에 복사한다.
yy 또는 Y
현재 커서가 위치한 라인을 버퍼에 복사한다.
nyy 또는 nY ( ex 5Y )
현재 커서 위치 라인부터 사용자 가 지정한 n개의 라인을 버퍼에 복사한다.
붙이기
p
버퍼에 복사되어 있던 문자열을 커서 위치 오른쪽 또는 라인의 아래 라인에 붙이기 한다.
대문자 P
버퍼에 복사되어 있던 문자열을 커서 위치 왼쪽 또는 라인의 위쪽 라인에 붙이기 한다.
라인병합과 분리
대문자 J
현재 커서 위치 라인과 그 아래쪽 라인을 현재 커서 위치 라인에 단일 라인으로 연결한다.
라인분리
분리하고자 하는 곳에 커서 위치시키고 i누르고 엔터키를 치면 라인이 분리된다.
현재는 삽입모드이므로 편집모드로 전환하기 위해 ESC를 누른다.
여러 라인 복사와 이동
: 5co10
5번 라인을 복사해 10번 라인 밑으로 삽입
: 4,8co20
4번 라인부터 8번 라인까지 복사해 20번 라인 밑으로 삽입
: 6,9m1
6번 라인부터 9번 라인까지 복사해 1번 라인 밑으로 이동
기타 기능
:r echo.c
현재 어떤 파일에서 작업을 한다고 가정할 때 커서가 있는 라인 밑에
echo.c 라는 파일을 삽입한다.
:!
vi를 종료하지 않고 유닉스 명령을 실행한다.
예시)
:!date
'전공 지식 정리 > 유닉스' 카테고리의 다른 글
#2 파일과 디렉토리 - 접근 허가 (0) | 2022.06.15 |
---|---|
#2 파일과 디렉토리 - mkdir, rmdir, 파일내용출력 (0) | 2022.06.15 |
#2 파일과 디렉토리 - ls명령어 (0) | 2022.06.15 |
#1 Vi 편집기 명령어1 (0) | 2022.04.20 |
#0 유닉스 개념, Vi 편집기 설정 및 간단 조작 (0) | 2022.04.20 |