Contents

System/OS
2003.04.23 10:26

[linux] 간단한 vi편집기 사용 명령

조회 수 13456 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
환경:
        :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!)                # 수정 내용 취소


?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
81 Develop [ios] 아이폰 앱 이름 및 버전 정보 hooni 2015.03.24 846
80 Develop [ios] Thread Loop 내에서 UI 업데이트 방법 hooni 2015.01.03 845
79 System/OS 개인적으로 쓰고 있는 bash_profile hooni 2015.01.16 842
78 Develop [c] 이진 탐색 두 가지 코드 (재귀/반복) file hooni 2015.06.26 838
77 Develop [ios] NSString, RegularExpression Find/Replace hooni 2017.04.14 834
76 Develop [ios] GMT Date와 Local Date 변환하기 hooni 2015.04.07 825
75 Develop [ios] 비동기 블럭 코드 예제 hooni 2014.11.21 825
74 System/OS 개인적으로 쓰고 있는 zshrc 파일 hooni 2022.02.25 824
73 Develop [kotlin] 코틀린 안드로이드 앱 버전/빌드 정보 hooni 2020.12.15 817
72 Database [mysql] MySQL 백업 및 복구 hooni 2019.11.22 817
71 Develop [android] 초간단 얼럿 (AlertDialog) hooni 2016.10.21 809
70 Develop [js] e.stopPropagation() VS e.preventDefault () file hooni 2015.04.14 808
Board Pagination Prev 1 ... 87 88 89 90 91 92 93 94 95 96 ... 98 Next
/ 98