System/OS
2003.04.23 10:26
[linux] 간단한 vi편집기 사용 명령
조회 수 13541 댓글 0
환경:
:set nu # 라인줄 보기
:set nonu # 라인줄 취소
:wq(:ZZ) # 저장하고 빠져 나오기
:q! # 그냥 빠져 나오기
:syntax off # 글자 안나올 때 syntax hilighting 기능을 꺼버린다
이동: h, j, k, l
^(0) # 그 줄의 처음으로
$ # 그 줄의 끝으로
G([[) # 그 파일의 끝으로 이동
1G(]]) # 그 파일의 첫줄로 이동
w(W) # 우측으로 한단어(빈칸까지) 이동하고 단어의 앞에 위치 word
b(B) # 좌측으로 한단어(빈칸까지) 이동하고 단어의 앞에 위치 back
e(E) # 우측으로 한단어(빈칸까지) 이동하고 단어의 끝에 위치 end
H # 한 화면의 처음으로 이동 high
M # 한 화면의 중간으로 이동 middle
L # 한 화면의 끝으로 이동 low
ctrl+g # 정보 보기(파일이름, 커서의 줄넘버, 총 줄)
ctrl+f # 아래로 한화면 이동 forward
ctrl+b # 위로 한화면 이동 backward
ctrl+d # 아래로 반화면 이동 down
ctrl+u # 위로 반화면 이동 up
6j # 아래로 6칸 이동
6k # 위로 6칸 이동
입력모드:
a(A) # 현재 커서의 문자뒤에서(그줄뒤에서) 입력모드 append
i(I) # 현재 커서의 문자앞에서(그줄앞에서) 입력모드 insert
o(O) # 현재 커서의 다음줄에(위줄에) 빈칸을 새로 만들고 입력모드
바꾸기:
x # 우측으로 한문자 지우고 명령모드
X # 좌측으로 한문자 지우고 명령모드
s # 한문자를 지우고 입력모드
r # 한문자만 바꿔치기
R # 한문자씩 계속 진행하면서 바꿔치기 한다
C # 현재커서 위치에서 줄의 끝까지 지우고 입력모드
cw # 우측으로 한단어 지우고 입력모드 change word
cb # 좌측으로 한단어 지우고 입력모드 change back
J # 현재 줄을 다음줄과 한줄로 연결
복사, 붙여넣기(p), 잘라내기:
dG # 현재 커서가 있는 줄부터 끝줄까지 잘라내기
d1G # 현재 커서가 있는 줄부터 처음줄까지 잘라내기
yw # 우측으로 한단어 복사
yb # 좌측으로 한단어 복사하고 단어 앞으로 이동
y0 # 좌측으로 그줄 처음까지 복사하고 그줄 앞으로 이동
y$ # 우측으로 그줄 끝까지 복사
dd(yy) # 한줄 잘라내기(복사)
3dd(3yy) # 세줄 잘라내기(복사)
6x # 커서가 있는 문자부터 6개의 문자를 지우라
6s # 커서가 있는 위치의 문자부터 6개의 문자를 지운 후 입력모드로 전환
6r # 6개의 문자 각각을 모두 다음에 입력하는 하나의 문자로 바꾼다
6r0 # 현재 커서가 있는 위치부터 7개의 문자를 '0' 즉 '0000000'으로 바꾼다
찾기:
?'findword' # 특정단어 찾기
/'findword' # 특정단어 찾기
/'findword' # 특정단어를 문자로 인식해서 찾기 예 ., .., $, ^ 등
n # 뒤로 찾기
N # 앞으로 찾기
:1,$s/^M//g # ^M(ctrl+v+M) 문자 일괄 지우기
:%s/oldword/newword/g # 처음부터 끝까지에서 특정단어를 새단어로 바꾼다
버퍼를 이용한 복사, 붙여넣기, 잘라내기:
"a2yy # 현재 커서가 있는 줄을 포함해서 2줄을 버퍼(") a에 넣는다
"by$ # 현재 커서가 있는 위치부터 줄의 끝까지의 내용을 버퍼(") b에 넣는다
ap # a에 저장된 2줄의 내용을 현재 커서가 있는 줄 다음에 붙여 넣는다
bp # 버퍼 b에 저장된 내용을 현재 커서가 있는 문자의 뒤에 붙여 넣는다
편집모드 고급활용:
:!'command' # 편집모드 상태에서 명령어 실행
:sh # 편집모드에서 잠시 쉘로 나가 작업하고 $ exit, ctrl+d로 다시 원래 편집모드로 돌아옴
:e 'newfile' # 편집모드에서 새파일을 편집
:e 'oldfile' # 편집모드에서 이전파일을 편집
:e# # 이전 편집파일 불러오기
:e!(q!) # 수정 내용 취소
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
190 | System/OS | RPA란? 어디에 어떻게 쓰이고 누가 만드나? | hooni | 2020.01.28 | 1527 |
189 | System/OS | SSH Passwordless Login Using SSH Keygen in 5 Easy Steps | hooni | 2019.11.22 | 1552 |
188 | System/OS | [virtualbox] VirtualBox에 Ubuntu 설치하기 | hooni | 2019.11.22 | 1085 |
187 | System/OS | Mac에서 Node.js 설치하기 | hooni | 2018.09.28 | 4347 |
186 | System/OS | 서버 확장을 위한 두 가지 방법 | hooni | 2018.08.29 | 2282 |
185 | System/OS | How to Setup an Email Server on CentOS 7 | hooni | 2018.04.05 | 3043 |
184 | System/OS | [mac] 맥에서 기본 실행 앱 변경하기 | hooni | 2018.03.02 | 1977 |
183 | System/OS | 콘솔에서 패스워드 걸린 zip 압축하는 명령 | hooni | 2018.03.02 | 1145 |
182 | System/OS | [linux] 초간단 SquirrelMail 설치/설정 (다람쥐 메일) | hooni | 2017.12.11 | 4623 |
181 | System/OS | [linux] 초간단 Postfix, Covecot, SSL/TLS (SMTP) | hooni | 2017.12.11 | 9530 |
180 | System/OS | [mac] How to uninstall MySQL on Mac OS. | hooni | 2017.11.08 | 1055 |
179 | System/OS | OpenSSL로 ROOT CA 생성 및 SSL 인증서 발급하기 | hooni | 2017.10.28 | 1646 |