한줄 복사
해당 라인에서 'yy', 즉 y를 두번 누르면 캐시에 저장이 된다.
붙여넣기를 원하는 곳으로 이동하여 'p'를 누르면 커서 다음 라인에 붙여넣기가 된다.
블럭 복사
'v'키를 누른 후 커서를 이동하여 블력을 설정한다.
(putty의 경우 블럭이 설정되는 모습이 보이나, ssh의 경우 블럭 모습이 나타나지 않으나 실제로는 설정되고 있다.)
원하는 부분을 블럭으로 설정한 뒤(설정 완료키는 없다) 'y'키를 누르면 캐시에 복사가 된다.
같은 방법으로 원하는 곳으로 이동하여 'p'를 누르면 커서 다음 라인에 붙여넣기가 된다.
행 번호 설정 명령어
명령어 | 설명 |
:set nu 또는 :set number | 에디터의 각 행의 좌측에 행 번호 표시. |
:set nonu | 에디터의 각 행의 좌측 행 번호 숨기기 |
행 찾기 명령어
명령어설명
명령어 | 설명 |
G | 파일의 마지막 행으로 가기 |
21G | 파일의 21번째 행으로 가기 |
Ctrl + G | 현재 File name과 커서의 라인 정보 |
탐색 및 대체 명령어
명령어 | 설명 |
/{검색할 문자열} | 오른쪽 아래 방향으로 문자열 검색 |
?{검색할 문자열} | 왼쪽 위 방향으로 문자열 검색 |
n | 문자열의 다음으로 계속 검색 |
N | 문자열의 이전으로 계속 검색 |
:g/search-string/s/ | 각 발생 탐색 후 확인하고 대체 |
:s/string/rep | 현재 행의 str을 rep로 대체 |
:1,.s/string/rep/ | 1부터 현재 행의 str을 rep로 대체 |
:%s/string/rep/g | 파일 전체 str을 rep로 전부대체 |
:.$/aaa/bbb | 커서의 위치로부터 파일의 끝까지 있는 모든 aaa를 bbb로 대체 |
화면 정리 명령어
명령어 | 설명 |
Ctrl + l | 불필요한 화면정리 후 다시 표시 |
파일 명령어
명령어 | 설명 | 예제 |
:r {파일명} | 커서 다음에 파일 삽입 | :r test.txt |
:{행번호} r {파일명} | 입력한 파일을 입력한 행번호 다음에 삽입 | :10 r test.txt |
보관 및 종료 명령어
명령어 | 설명 |
:w | 변경사항 저장 |
:w {파일명} | 변경사항 입력한 파일명으로 저장 |
:wq | 변경사항 보관 후 vi 종료. ZZ 명령과 같음. :w(기록)과 :q(종료) 를 연속적으로 수행. |
ZZ | 변경사항 보관 후 vi 종료. 임시 버퍼의 내용을 vi로 호출할때 사용되었던 파일에 기록한 후 vi를 빠져나옴. |
:q! | 변경사항 보관하지 않고 종료 |
q | 수정한 파일을 저장하지 않고 vi 종료 |
e! | 수정한 것을 무시하고 다시 편집상태로 |
기타
문자 | 설명 |
. | 현재 line |
% | 전체 line |
$ | 파일 맨끝 line |
1,$ | % |
2,3 | 2 ~ 3 line |
vi/vim 단축키 (English)
vi/vim 단축키 (한글)
이동에 편리한 단축키
키보드 모양의 명령어 단축키
vi/vim lesson 1 - various commands
vi/vim lesson 2 - various commands
vi/vim lesson 3 - various commands
vi/vim lesson 4 - various commands
vi/vim lesson 5 - various commands
vi/vim lesson 6 - various commands
vi/vim lesson 7 - various commands
첫댓글 오랜만에 vi명령어를 보면서 리눅스 공부하던때가 마구 떠오르는군요~~
좋은 정보 감사~~
적응하신 분들 보면, 영화 속 프로그래머처럼 키보드 만으로도 모든 제어를 하시더라구요.. 틈틈히 연습하려고 합니다 ㅎㅎ