vi 쓰면서 매번 까먹고 인터넷 검색을 다시 하게 되어 정리한다.
vi 시작 명령어 | 작업설명 | 텍스트 삭제 명령어 | 작업설명 |
vi filename | 파일 열기, 작성 | x | 커서가 있는 문자 삭제 |
vi +18 filename | 18행으로 파일 열기 | 5x | 커서가 있는 위치부터 5개의 문자를 삭제 |
vi +/"문자열" fn | "문자열"의 처음 발생 단어부터 열기 | dw | 현재 커서가 있는 한단어 삭제 |
vi -r filename | dd | 커서가 있는 라인 삭제 | |
view filename | 5dd | 커서가 있는 라인부터 5개의 라인 삭제 | |
vi 커서 이동 명령어 | 작업설명 | db | 커서의 위치에서 거꾸로 한단어 삭제 |
h(←) | 왼쪽으로 커서 이동 | D | 커서 오른쪽 행 삭제 |
j(↓) | 아래로 커서 이동 | :5, 10d | 5-10번째 행 삭제 |
k(↑) | 위로 커서 이동 | 복사 및 이동 명령어 | 작업설명 |
l(→) | 오른쪽으로 커서 이동 | yy | 행yank 또는 복사 |
w | 오른쪽 한단어의 끝 부분으로 커서 이동 | Y | 행yank 또는 복사 |
e | 오른쪽 한단어의 앞 부부으로 커서 이동 | p | yank되거나 삭제된 행 현재 행 위에 삽입 |
b | 왼쪽 한단어의 앞 부분으로 커서 이동 | P | yank되거나 삭제된 행 현재 행 아래에 삽입 |
Enter | 한 행 아래로 커서 이동 | :1,2 co 3 | 1-2행을 3행 다음으로 복사 |
Back space | 한 문자 왼쪽으로 커서 이동 | :4,5 m 6 | 4-5행을 6행 위로 이동 |
Space Bar | 한 문자 오른쪽으로 커서 이동 | 행 번호 설정 명령어 | 작업설명 |
^ | 행의 맨 왼쪽으로 커서 이동 | :set nu | 행 번호 표시 |
$ | 행의 맨 오른쪽으로 커서 이동 | :set nonu | 행 번호 숨기기 |
H | 화면의 맨 위로 이동 | 행 찾기 명령어 | 작업설명 |
M | 화면의 중간으로 이동 | G | 파일의 마지막 행으로 가기 |
L | 화면의 맨 아래로 이동 | 21G | 파일의 21번째 행으로 가기 |
숫자G | "숫자"만큼 지정한 줄로 커서 이동 | Ctrl+G | 현재 filename과 line수를 알려줌 |
문자, 행 삽입 명령어 | 작업설명 | 탐색 및 대체 명령어 | 작업설명 |
a (종료:ESC) | 커서 오른쪽에 문자 삽입 | /검색할 문자열/ | 오른쪽 아래 방향으로 문자열 검색 |
A (종료:ESC) | 커서 오른쪽, 행의 끝에 문자 삽입 | ?검색할 문자열? | 왼쪽 위 방향으로 문자열 검색 |
i (종료:ESC) | 커서 왼쪽에 문자 삽입 | n | 문자열의 다음으로 계속 검색 |
I (종료:ESC) | 커서 왼쪽, 행의 처음에 문자 삽입 | N | 문자열의 이전으로 계속 검색 |
o (종료:ESC) | 커서 아래에 행 삽입 | :g/search-string/s/ | 각 발생 탐색 후 확인하고 대체 |
O (종료:ESC) | 커서 위에 행 삽입 | /replace-string/gc | |
테스트 변경 명령어 | 작업설명 | :s/str/rep | 현재 행의 str을 rep로 대체 |
cw (종료:ESC) | 단어 변경 | :1,.s/str/rep/ | 1부터 현재 행의 str을 rep로 대체 |
cc (종료:ESC) | 행 변경 | :%s/str/rep/g | 파일의 전체 str을 rep로 전부 대체 |
C (종료:ESC) | 커서 오른쪽에 행 변경 | :$/aaa/bbb/ | 커서의 위치로부터 파일의 끝까지 있는 |
s (종료:ESC) | 커서가 위치한 문자열 대체 | 모든 aaa를 bbb로 대체 | |
S (종료:ESC) | 커서가 위치한 라인의 문자열 대체 | 화면정리 명령어 | 작업설명 |
r | 커서 위치 문자를 다른 문자로 대체 | Ctrl+l | 불필요한 화면 정리 후 다시 표시 |
r-Enter | 행 분리 | 파일 명령어 | 작업설명 |
J | 현재 행과 아래 행 결합 | :r filename | 커서 다음에 파일 삽입 |
xp | 커서 위치 문자와 오른쪽 문자 교환 | :34 r filename | 파일을 34번째 행 다음에 삽입 |
~ | 문자형(대, 소문자) 변경 | 보관 및 종료 명령어 | 작업설명 |
u | 이전 명령 취소 | :w | 변경사항 보관 |
U | 행 변경 사항 취소 | :w filename | 버퍼를 파일로 보관 |
:u | 이전 최종 행 취소 | :wq | 변경사항 보관 후 vi 종료 |
. | 이전 최종 명령 반복 | ZZ | 변경사항 보관 후 vi 종료 |
:q! | 변경사항 보관하지 않고 종료 | ||
:q | 수정한 파일을 저장하지 않고 vi 종료 | ||
:e! | 수정한 것을 무시하고 다시 편집 상태로 |
반응형
'IT 기술 관련 > OS 관련 (linux,window,mac)' 카테고리의 다른 글
[linux] netstat 상태값 정리 (0) | 2023.07.04 |
---|---|
[linux] 메모리 캐시 삭제 (0) | 2023.06.20 |
[mac] 사용 포트 확인 및 강제 종료 (0) | 2023.06.20 |
[mac] 윈도우 키보드 한영 전환 단축키 (일본어키로 인식) (0) | 2023.06.14 |
[mac] ls -l 명령어 결과화면의 권한 항목에 @가 붙는 경우 (0) | 2023.06.12 |