*
모드
o
1 명령 - 단축키 사용 가능, 입력/실행 모드 변환시 항상 거쳐야함
1. 입력(a,i,o),실행((실행 :),(색인 /,?))
o 2 입력 - 편집
o
3 EX(실행) - 저장,종료...
1.
:wq 저장종료 , :q! 강제종료(저장안됨)
*
커서 이동
o h : 커서를 왼쪽으로 이동
o j : 커서를 아래로 이동
o k : 커서를 위로 이동
o
l : 커서를 오른쪽으로 이동
*
커서 이동(단어 단위)
o W, w : 다음 단어의 처음으로 이동(왼->)
o E, e : 단어의 끝으로 이동
o B, b : 단어의 처음으로 이동(<-오른)
o 영,소,대,숫 를 하나의 단어로 인식!
o 소문자 : 특수, 띄어쓰기, 개행
o
대문자 : 띄어쓰기, 개행
*
커서 이동(행 단위)
o 0 : 행의 처음으로 이동(Home)
o
$ : 행의 마지막으로 이동(End)
*
커서 이동(문서 단위)
o G : 문서의 마지막으로 이동
o gg : 문서의 처음으로 이동
기타 이동
실행 모드 : set nu(라인 넘버 활성화)
z+Enter : 현재 커서가 위치한 곳을 화면의 처음으로 이동
z+. : 현재의 위치를 화면의 중앙으로 이동
z+- : 현재의 위치를 화면의 마지막으로 이동
ctrl + f : pageDown
ctrl + b : pageUp
ctrl + d : half pageDown
ctrl + u : half pageUp
ctrl + e : 화면을 한줄씩 올리기
ctrl + y : 화면을 한줄씩 내리기
비프음 끄기
TUI
setterm -blength 0
setterm -bfreq 10
GUI
xset b off
현재쉘
bash shell : /etc/inputrc 에 set bell-style none 추가
Tcsh shell : .tcshrc에 set nobeep=1 추가
*
명령 모드
o
책갈피 기능
o
설정법 : m? -> ?는 a~z, A~Z
o
이동법 : back quote(`) + ? : 마크된 정확한 위치로 이동
+
quote(') + ? : 마크된 줄의 처음으로 이동
o
'' : 원래 위치로 되돌아감
o
입력 모드 이동과 복사, 잘라내기, 붙여넣기
o
O : 전줄 입력 모드
o
o : 다음줄 입력 모드
o
I : 해당줄 처음에서 입력 모드(Home+i)
o
i : 커서 앞에서 입력 모드
o
a : 커서 뒤에서 입력 모드
o
A : 해당줄 마지막에서 입력 모드(End+i)
o
s : 현재 문자 지우고 입력 모드
o
S : 현재 행 모두 지우고 입력 모드
o
x : 현재 커서 문자 하나 삭제(연타시 뒤에 것 계속 지움)
o
X : 현재 커서 앞에 있는 것 삭제(백스페이스랑 같은 역할,연타시 전에 것 계속 지움)
o
dd : 행삭제(숫자+dd : 숫자 행만큼 삭제)
o
d$ : 현재 커서 뒤로 해당행 싹 삭제
o
yy : 행 복사
o
p : 복사한 내용 이후 붙여넣기(우)
o
P : 복사한 내용 이전 붙여넣기(좌)
o
dvj(dv+) : 행잘라내기(커서가 있는데 부터 한줄)
o
u : 실행취소
o
Ctrl+r : 원복
o
비쥬얼 모드(vim에서 추가된 모드)
o
v : 비주얼 모드 변환 이동키 입력시 블럭 지정됨
o
V : 비주얼 모드로 한줄 블럭 지정
o
y : 복사
o
x : 잘라내기
o
d : 삭제
*
EX(실행) 모드
o
검색(색인)
o
/pattern : pattern 검색 (:nohl 검색시 색깔을 없애줌)
o
?pattern : pattern 검색
o
/ : 검색 후 n 키(아래방향), N 키(위방향) 계속 찾기
o
? : 검색 후 N 키(아래방향), n 키(위방향) 계속 찾기
o
치환
o
1,5s/\//=/gc : 1~5줄까지 / 를 =로 치환하는데 g(모두)c(물어본다)
o
. : 현재행
o
^ : 처음행(줄처음)
o
$ : 마지막행(줄마지막)
o
% : 전체 범위
o
\ : escape문자
o
% : 문서전체
o
.-2,.+3s/test/test2/g : 현재줄-2,현재줄+3 까지 test -> test2 바꿈
o
^,.s/$/-*/g : 문서처음,현재줄 까지 모든줄 마지막 에 -* 붙이기
o
.,$s/^/ + /g : 현재줄,문서마지막행 까지 모든줄 처음 에 + 붙이기
o
%s/\/usr\/bin\/test/\/usr\/doc\/test/g : 문서전체에서 /usr/bin/test를 /usr/doc/test 바꿈
o
Shell 명령어
o
! [commangd] : vi를 잠시 중단하고 명령어 수행
o
.! [command] : 명령어 수행 결과를 vi로 가져와서 커서 뒤에 붙여넣기(주로 새로운 행 만들고 수행)
o
Split window(창나누기)
o
Ctrl+w+n(split) : 수평나누기(새로운창열림)
o
Ctrl+w+v(vs) : 수직나누기(똑같은게열림(수정하면 다같이 적용))
o
Ctrl+w : 창이동
o
Ctrl+w+h,j,k,l : 방향창이동
o
only : 창합치기(수정된 내용이 있는 창은 안없앰) , only!(강제창합치기 안좋음 쓰지마세요)
o
2split/test/shadow : 2줄짜리 수평 나누기 /test/shadow를 연다(파일있으면 열고없으면 만들어줌)
+
저장하지 않는한 파일 생성되지 않는다!!
o
10vs/test/222 : 10칸짜리 수직 나누기 /test/222를 연다(라인넘버4칸참고)
o
EX 모드
o
e /test/222 : /test/222 파일 열기(현재창이 저장 않되었으면 열리지 않는다)
o
e! /test/222 : 강제로 불러오기
o
enew : 새로운 창 열기
o
enew! : 강제로 새창 열기
o
q : 정상 종료
o
q! : 강제 종료
o
w : 파일 저장
o
w! : Read-Only일 경우 강제 저장(파일소유자,관리자)
o
w /test/222 : 다른 이름으로 대상 저장
o
w >> /test/222 : 대상 밑에 추가
o
f : 현재 작업중인 파일의 이름과 라인수
o
9r /test/222 : 9행 다음인 10행부터 붙여넣는다
o
9r! ls -l /test/222 : 명령출력값을 10행부터 붙여넣는다
o
set ts=4 : TabSize 4 로 설정(기본은 8)
o
set nu : Line number 활성화
o
set nonu : Line number 비활성화
o
set ic : 대소문자 구분하지 않는다(검색시 용이)
o
set noic : 위에것 비활성화
o
nohl : 하이라이트 활성화
o
설정 파일
o
/etc/vimrc : 시스템에 로그인 하는 모든 사용자가 공통적으로 적용받는 vim 설정파일
o
개별사용자로 설정시 : /usr/share/vim/vim70/vimrc_example.vim 을
+
사용자홈디렉토리로 복사
+
ex) root 사용자 :
+
cp /usr/share/vim/vim70/vimrc_example.vim /root/.vimrc
+
기본적으로 없으므로 생성이나 복사를 해야함
'IT' 카테고리의 다른 글
[공유] Telnet 명령어 (0) | 2018.12.27 |
---|---|
tar 압축, 풀기 (0) | 2018.12.27 |