2007. 2. 15. 18:39
잡다한것
vi는 크게 세 가지 모드로 나뉘어집니다. 우선 명령모드로 키 입력이 바로 명령이 되는 모드, 다음은 입력모드로 실제 문서를 편집하는 모드, 마지막으로 ex 모 드로 ex명령을 실행시키는 모드입니다. vi를 실행시키면 처음에는 명령모드 상태에 있게 됩니다. 명령모드에서 : 키를 누르면 ex모드로, a, i 등의 키를 누르면 입력모 드로 전환되어 문서를 편집할 수 있는 상태로 됩니다. 본격적인 내용으로 들어가기 전에 기본적인 편집에 대해서 설명을 하겠습니 다. 특정 파일을 편집하기 위해 열려면 vi [filename]을 shell prompt에서 실행시킵 니다. 이렇게 연 파일을 편집모드로 들어가 편집하려면 i를 입력, 원하는 내용을 입 력한 후 종료하려면 [ESC]ZZ 나 [ESC]:wq를 누르면 저장 후 종료하게 됩니다. 이 정 도는 기본적으로 알아두셔야 지금부터 하는 내용을 따라해 보실 수 있겠죠? 또 기본 적으로 알아두셔야 할 명령이 명령모드에서 u 즉 undo명령입니다. 그래야 잘못 실행 된 명령을 바로 undo할 수 있겠죠...^^;
2.1 편집
2.1.1 복사, 붙이기, 삭제
2.1.2 Named 버퍼 사용
2.1.3 여러 문서의 편집
2.2 이동
2.2.1 짧은 이동
2.2.2 원거리 이동
2.2.3 찾기로 이동
2.2.4 마크를 이용한 이동
2.3 파일 저장, 열기, 종료
* 네이버 지식인 중에서.. http://kin.naver.com/db/detail.php?d1id=1&dir_id=10203&eid=U4DmxRxL4ew9/ke7DyH40X+FgTnKTbbm&qb=dmksILjtt8m+7iwgua7A2iDDo7Hi
현재위치에서 삽입 i
현재줄의 처음 위치에서 삽입 I
현재위치에서 추가 a
현재줄의 끝에서 추가 A
새로운 한 줄을 커서 아래줄에 연다. o
새로운 한 줄을 커서 위줄에 연다. O
줄을 지우고 삽입모드로 S
현재 위치에서 Relpace 모드로 R
다음줄과 현재줄을 합친다. J
대문자<->소문자 ~
마지막 명령을 반복한다. .
마지막 수정한 것을 취소한다. u
줄을 처음 상태로 복구한다. U
현재줄의 처음 위치에서 삽입 I
현재위치에서 추가 a
현재줄의 끝에서 추가 A
새로운 한 줄을 커서 아래줄에 연다. o
새로운 한 줄을 커서 위줄에 연다. O
줄을 지우고 삽입모드로 S
현재 위치에서 Relpace 모드로 R
다음줄과 현재줄을 합친다. J
대문자<->소문자 ~
마지막 명령을 반복한다. .
마지막 수정한 것을 취소한다. u
줄을 처음 상태로 복구한다. U
2.1 편집
2.1.1 복사, 붙이기, 삭제
한 단어 cw dw yw
두 단어 2cw or c2w 2dw or d2w 2yw or y2w
한 행 cc dd yy
커서 위치에서 행의 끝까지 c$ or C d$ or D y$ or Y
커서 위치에서 행의 처음까지 c0 d0 y0
한 문자 변경 r x or X y1 or yh
두 단어 2cw or c2w 2dw or d2w 2yw or y2w
한 행 cc dd yy
커서 위치에서 행의 끝까지 c$ or C d$ or D y$ or Y
커서 위치에서 행의 처음까지 c0 d0 y0
한 문자 변경 r x or X y1 or yh
2.1.2 Named 버퍼 사용
2.1.3 여러 문서의 편집
2.2 이동
2.2.1 짧은 이동
좌, 하, 상, 우 h, j, k, l
다음줄의 첫번째 문자로 + or [enter]
이전줄의 첫번째 문자로 -
단어의 끝으로 e, E
다음 단어로 w, W
이전 단어로 b, B
행의 끝으로 $
행의 처음으로 0 ('A' 인 경우 A앞으로 커서이동)
행의 처음으로 ^ ('A' 인 경우에도 맨앞으로 커서이동)
다음, 이전 문장의 처음으로 ), (
다음, 이전 문단의 처음으로 }, {
다음, 이전 구절의 처음으로 ]], [[
다음줄의 첫번째 문자로 + or [enter]
이전줄의 첫번째 문자로 -
단어의 끝으로 e, E
다음 단어로 w, W
이전 단어로 b, B
행의 끝으로 $
행의 처음으로 0 ('A' 인 경우 A앞으로 커서이동)
행의 처음으로 ^ ('A' 인 경우에도 맨앞으로 커서이동)
다음, 이전 문장의 처음으로 ), (
다음, 이전 문단의 처음으로 }, {
다음, 이전 구절의 처음으로 ]], [[
2.2.2 원거리 이동
한 화면 앞으로 스크롤 ^F (means CTRL-F)
한 화면 뒤로 스크롤 ^B
반 화면 앞으로 스크롤 ^D
반 화면 뒤로 스크롤 ^U
한 줄 앞으로 스크롤 ^E
한 줄 뒤로 스크롤 ^Y
화면의 맨 위줄로 H nH인 경우 맨 위에서 n행 밑으로
화면의 중간 줄로 M
화면의 맨 아래줄로 L nL인 경우 맨 밑에서 n행 위로
한 화면 뒤로 스크롤 ^B
반 화면 앞으로 스크롤 ^D
반 화면 뒤로 스크롤 ^U
한 줄 앞으로 스크롤 ^E
한 줄 뒤로 스크롤 ^Y
화면의 맨 위줄로 H nH인 경우 맨 위에서 n행 밑으로
화면의 중간 줄로 M
화면의 맨 아래줄로 L nL인 경우 맨 밑에서 n행 위로
2.2.3 찾기로 이동
문자열의 처음으로 앞으로 검색 /pattern
문자열의 처음으로 뒤로 검색 ?pattern
검색을 다시 반복 (같은 방향) n
검색을 다시 반복 (반대 방향) N
현재 줄에서 x가 있는 곳으로 이동 fx
현재 줄에서 x가 있는 곳으로 이동 Fx
n행 밑에서 x가 있는 곳으로 이동 tx
n행 위에서 x가 있는 곳으로 이동 Tx
줄에서 찾기를 같은 방향으로 반복 ;
줄애서 찾기를 반대 방향으로 반복 ,
행 이동 n번째 줄로 이동 nG (n이 생략되면 마지막 줄로) :n
열 이동 n| (n이 생략되면 처음 열로)
현재 커서가 위치한 단어 찾기 * (앞 방향으로 찾는다.)
현재 커서가 위치한 단어 찾기 # (뒤로 찾는다.)
문자열의 처음으로 뒤로 검색 ?pattern
검색을 다시 반복 (같은 방향) n
검색을 다시 반복 (반대 방향) N
현재 줄에서 x가 있는 곳으로 이동 fx
현재 줄에서 x가 있는 곳으로 이동 Fx
n행 밑에서 x가 있는 곳으로 이동 tx
n행 위에서 x가 있는 곳으로 이동 Tx
줄에서 찾기를 같은 방향으로 반복 ;
줄애서 찾기를 반대 방향으로 반복 ,
행 이동 n번째 줄로 이동 nG (n이 생략되면 마지막 줄로) :n
열 이동 n| (n이 생략되면 처음 열로)
현재 커서가 위치한 단어 찾기 * (앞 방향으로 찾는다.)
현재 커서가 위치한 단어 찾기 # (뒤로 찾는다.)
2.2.4 마크를 이용한 이동
현재 위치를 x 이름의 마크로 저장 mx
마크한 위치(행, 열)로 이동 `x
마크한 줄로 이동 'x
이전에 마크한 위치로 이동 ``
이전에 마크한 줄로 이동 ''
마크한 위치(행, 열)로 이동 `x
마크한 줄로 이동 'x
이전에 마크한 위치로 이동 ``
이전에 마크한 줄로 이동 ''
2.3 파일 저장, 열기, 종료
file 열기 vi [filename]
여러 파일 열기 vi [filename1] [filename2]
읽기 전용으로 열기 view [filename] 또는 vi -R [filename]
열고 마지막 행에 위치 vi + [filename]
파일을 열고 n 번째 행에 위치 vi +n [filename]
패턴이 나타나는 곳에 행 위치 vi +/pattern [filename]
변경된 파일이면 저장하고 종료 ZZ 또는 :x
저장하고 종료 :wq
파일의 저장 w
특정 범위만 저장 :<범위>w [filename]
특정 범위를 다른 파일에 덧붙임 :<범위>w >> [filename]
여러 파일 열기 vi [filename1] [filename2]
읽기 전용으로 열기 view [filename] 또는 vi -R [filename]
열고 마지막 행에 위치 vi + [filename]
파일을 열고 n 번째 행에 위치 vi +n [filename]
패턴이 나타나는 곳에 행 위치 vi +/pattern [filename]
변경된 파일이면 저장하고 종료 ZZ 또는 :x
저장하고 종료 :wq
파일의 저장 w
특정 범위만 저장 :<범위>w [filename]
특정 범위를 다른 파일에 덧붙임 :<범위>w >> [filename]
* 네이버 지식인 중에서.. http://kin.naver.com/db/detail.php?d1id=1&dir_id=10203&eid=U4DmxRxL4ew9/ke7DyH40X+FgTnKTbbm&qb=dmksILjtt8m+7iwgua7A2iDDo7Hi
'잡다한것' 카테고리의 다른 글
처음처럼 병뚜껑 이벤트 당첨!! ^^ (0) | 2008.11.20 |
---|---|
커뮤니케이션 이란?? (0) | 2007.02.16 |
소프트웨어는 소프트한가? (0) | 2007.01.16 |
[책] 뜨거운 관심 - 하우석 (0) | 2007.01.16 |
티스토리 초대장 (0) | 2007.01.09 |