System/OS
2003.04.23 10:26
[linux] 간단한 vi편집기 사용 명령
조회 수 13540 댓글 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!) # 수정 내용 취소
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
202 | System/OS |
[apache2] Redirect HTTP to HTTPS
![]() |
hooni | 2022.02.03 | 867 |
201 | System/OS |
[macos] How to Fix ‘You Shut Down Your Computer Because of a Problem’
![]() |
hooni | 2022.06.01 | 981 |
200 | System/OS | 개인적으로 쓰고 있는 bash_profile | hooni | 2015.01.16 | 1001 |
199 | System/OS | [linux] The Ultimate Wget Download Guide With 15 Awesome Examples | hooni | 2020.05.26 | 1003 |
198 | System/OS | 개인적으로 쓰고 있는 zshrc 파일 | hooni | 2022.02.25 | 1035 |
197 | System/OS | [mac] How to uninstall MySQL on Mac OS. | hooni | 2017.11.08 | 1052 |
196 | System/OS |
[virtualbox] VirtualBox에 Ubuntu 설치하기
![]() |
hooni | 2019.11.22 | 1080 |
195 | System/OS |
[펌] 마이크로서비스, 모노리포, SRE, ... 덮어놓고 구글 따라하면 안 되는 기술들
![]() |
hooni | 2020.10.15 | 1119 |
194 | System/OS | [mac] 패키지 매니저, MacPort | hooni | 2015.01.03 | 1137 |
193 | System/OS | 콘솔에서 패스워드 걸린 zip 압축하는 명령 | hooni | 2018.03.02 | 1140 |
192 | System/OS | [svn] Can't convert string from native encoding to 'UTF-8' 메시지가 나오는 경우 | hooni | 2014.12.18 | 1167 |
191 | System/OS |
[mac] OS X 엘 캐피탄에서 Soudflower 사용하기
2 ![]() |
hooni | 2016.10.03 | 1186 |