728x90
vi에디터의 더 다양한 기능을 알아보자
기본 기능은 아래의 링크 참고하면된다.
2023.04.25 - [TIL] - [리눅스] Linux vi 에디터 기본 기능 2일차-1
검색, 문자열 변경
입력모드가 아닌 일반 모드에서 실행해야하는걸 항상 생각해보자
무슨 모드인지 모르겠으면 일단 ESC 연타하자
/find 텍스트 에서 find를 검색한다. 찾은 항목들은 n 을 눌러 다음항목으로 이동가능하다.(3글자 이상)
? find 텍스트에서 find를 검색한다. /find 와 같음
:2, 5 s/find/ok 2~5라인의 find가 있으면 ok 로 대체한다(substitute)
:20, 30 s/choco/jelly/g 20~30라인의 choco가 여러번 나와도 모두 변경한다 global
:1,$ s/choco/jelly 처음부터 끝까지 변경한다
:% s/choco/jelly 전체를 변경한다
+ 단어 위에서 shift + 8을 누르면 파일안에 있는 같은 단어를 찾을 수 있다.
vi 환경설정
:set 설정 내용 보기
:set all 전체 설정
:se nu 줄 번호 보이기 (set number)
:se nonu 줄 번호 가리기 (set nonumber)
:se ai 자동 들여쓰기 설정 (set auto indent)
:se noai 자동 들여쓰기 해제 (set no auto indent)
:se ts=5 탭 간격 5로 설정
설정 파일을 vi로 한 번에 편집할 수 있다.
$ vi ~/.vimrc
vimrc 파일을 편집해서도 ab 키 맵핑을 사용할 수 있다.
ab P printf(" "); vi에서 P 입력후 enter키 누를 때 printf(" "); 가 출력 되게 한다.
vi 기타 유용한 기능
:f 현재 파일명 보기
:r ! date date 경과를 파일에 삽입
:17 r ! cal 17 라인에 cal 삽입
:0 r ! date 첫 번째 라인에 date 삽입
:set cursorline 커서 있는 라인 줄 표시
:set mouse=a 마우스로 커서 움직일 수 있게 설정
:set mouse=r 마우스 모드 해제
mouse mode를 설정하면 자동으로 visual mode로 전환된다.
visual mode 는 아래에 설명한다.
vi visual mode 여러 행 선택
비주얼 모드에서는 여러 행을 선택 할 수 있을 뿐만 아니라 여러 열을 선택할 수 있다.
ctrl + v 한상태에서 커서를 우측으로 이동하여 블록의 범위를 지정한다.
여러 열을 지정하려면 같은 상태에서 커서를 아래쪽으로 이동한다.
shift + v 를 이용해서 한 번에 여러 행을 지정할 수도 있다.
지정된 블록은 다음과 같은 명령어를 사용할 수 있다.
d 삭제
y 복사
p 붙여넣기
c 치환
~ 대소문자 전환
J 두 줄 합치기
U 대문자로 변환
u 소문자로 변환
> 행 앞에 탭 삽입
< 행 앞에 탭 제거
vi 창분할
:vs newta newta 파일명으로 세로창 분할
:sp newta2 newta2 파일명으로 가로창 분할
ctrl + w 창 간 커서 전환
:close 창 닫기
창 분할 보다는 PuTTY 에서 duplication session 한 후 창을 하나 더 띄우는 방법이 편할 수 있겠다.
728x90
'TIL' 카테고리의 다른 글
[리눅스] Linux 프로세스 관리, 파티션 설정 4일차-1 (1) | 2023.04.27 |
---|---|
[리눅스] Linux bash 쉘과 쉘 스크립트 작성 3일차-2 (0) | 2023.04.26 |
[리눅스] Linux C, C++, JAVA 컴파일하기 3일차-1 (0) | 2023.04.26 |
[리눅스] Linux vi 에디터 기본 기능 2일차-1 (0) | 2023.04.25 |
[리눅스] Linux 기본 명령어 1일차 (0) | 2023.04.24 |