- VI Editor -

1. 정의 : Linux의 대표적인 문서 편집기 ("vim"도 있음)

 

2. 형식

  - #vi [대상 파일]


3. VI-Editor 동작 Mode

[ 그림참조 ]


 

4. Vi Editor 내 자주 사용되는 키(소문자 사용).


[ 명령모드 ]

 (커서이동 - 칸단위)


 

 (커서이동 - 단어단위)

  - w : 커서 위치의 다음 단어의 머리

  - b : 커서 위치의 이전 단어의 머리

  - e : 커서 위치의 다음 단어의 꼬리

 

 (커서이동 - 행단위)

  - 0(^) : 커서 위치 행의 처음으로 이동

  - $ : 커서 위치 행의 마지막으로 이동

 

 (커서이동 - 문서단위)

  - gg([[) : 문서의 가장 처음으로 이동

  - G(]]) : 문서의 가장 아래쪽 처음칸으로 이동

 

 (기능키)

  - x : 커서칸의 내용을 삭제

  - u : 지금까지 작업한 내용을 되돌리기(undo)

  - p : 조합키를 이용하여 삭제/복사한 내용을 커서 다음으로 붙여넣기

 

(조합키)

  - r + ? : 커서칸의 내용을 "?" 로 수정

  - d[] : 삭제의 조합키로써 "d" 다음 칸에 이동관련 키들을 조합할 수 있다.

           => 'dd' 명령어의 경우 행단위로 삭제를 할 수 있음

  - y[] : 복사의 조합키로써 "y" 다음 칸에 이동관련 키들을 조합할 수 있다.

           => 'yy' 명령어의 경우 행단위로 복사를 할 수 있음

 

   ※ 조합키의 경우 키 앞쪽에 "n(numberic)" 이 가능하다. (ex : 3dd, 2yw, 12yy ... etc)


[ 입력모드 ]

  - i : 커서칸부터 입력모드로 전환하여 내용 삽입가능

  - a : 커서 다음 칸부터 입력모드로 전환하여 내용 삽입가능 ("$ + a" 형태로 자주 사용)

  - o : 커서 다음 라인에 새로운 라인을 삽입하며 입력모드로 전환하여 내용 삽입가능("G + o" 형태로 자주 사용)

 

[ 실행모드 ]

(검색키)

  - / : "/Pattern" 형태로 Pattern 을 순차검색 (n=다음/N=이전)

  - ? : "?Pattern" 형태로 Pattern 을 역순검색 (n=이전/N=다음)


(활용키)

  - :e [File] : 현재 문서를 종료 하면서 File 을 열람

  - :n  : n라인으로 이동

  - :q  : 문서를 종료

  - :q! : 문서를 저장하지 않고 종료

  - :w : 문서를 저장

  - :wq : 문서를 저장하고 종료

  - :se nu : set number 의 약자로 문서내 왼쪽에 행번호를 출력

  - :se nonu : set nonumber 의 약자로 문서내 출력된 행번호를 제거


[ 추가사항 ]

(치환)

  - :[범위]s/[Old]/[New]/[g]

     * 범위 : 10,900 (10행부터 900행까지 적용) / % (문서 전체)

     * Old/New : Old 문자열을 New 문자열로 치환

     * g : 반복적용할 것인지 여부


(명령실행)

  - :! [Command] : Command 를 실행

  - :.! [Command] : Command 실행 결과를 Vi 로 출력


(내용삽입)

  - :w >> [File] : File 문서 하단에 현재 작업중인 문서를 삽입

  - :[n]r[File] : File 내용을 n 번째 라인에 삽입

  - :[n]r![Command] : Command 출력결과를 n 번째 라인에 삽입


 


 

AND

[ Grub 라고 불리는 BootLoader 를 활용하는 방법을 배워보자!! ]


* 설정파일

  - /boot/grub/grub.conf (링크파일 : /etc/grub.conf)


* 옵션

  - timeout = 부팅시간(초단위)

    ( ex. timeout=10 )


  - default <엔트리번호> = 기본값으로 부팅될 순서

    ( ex. default 0 )


  - fallback <엔트리번호> = 부팅실패시, 차순위 부팅순서

    ( ex. fallback 1 )


  - title <부팅제목>

    ( ex. title Redhat 9 )


  - root (<하드디스크장치,파티션>)

    ( ex. root (hd0,0)


  - kernel /vmlinuz-<버전> ro root=/dev/<장치명>

    ( ex. kernel /vmlinux-2.4.20 ro root=/dev/hda2 )


  - initrd <이미지파일명> = 시스템 초기화용 램디스크 이미지 파일



※ Windows 설치후 GRUB가 없어졌을 경우 Grub 재설치하기

  1. 리눅스 설치시디 1번으로 부팅

  2. "boot : " 부분에서 아래의 내용을 입력한다.

      - vmlinuz root=/dev/sda7           // 루트파티션을 지정해주어야 함

  3. #grub-install /dev/sda               // 리눅스가 설치된 디스크에 grub 부트로더를 다시 설치

 


※ Windows 와 멀티부팅 설정하기

  - /boot/grub/grub.conf에 아래형식을 추가하여 멀티부팅 설정

     title <타이틀명>

          rootnoverify (<장치명,파티션>)

          makeactive

          chainloader +1


AND

- touch -
1. 정의 : 빈 파일을 생성하거나 또는 지정된 파일의 시간정보를 수정할 수 있다.

 

2. 형식
  - #touch [옵션] [파일명]

3. 옵션
  - c : 파일을 생성할 때 존재하는 파일명을 입력하면 시간정보만 수정한다. 
  - d : 지정하는 파일의 시간정보를 수정할 수 있다.
  - t : 지정하는 파일의 날짜 및 시간정보를 모두 수정가능하다.

        (Syntax : #touch -t [MMDDHHmm] [ 대상 ] - MM월 DD일 HH시 mm분으로 지정된 날짜를 지정가능)

        ※ 단, 현재 시스템 시간보다 미래의 시간을 설정하면 시간내용이 아닌 날짜 정보가 입력됨

==========================================================================================
- cp -

1. 정의 : 파일 또는 디렉터리를 복사할 때 사용하고, 이름을 변경하여 복사가 가능하다.

 

2. 형식
   - #cp [옵션] [원본경로] [대상경로]

 

3. 옵션
 - i : 파일을 복사할 때 대상경로에 같은 파일명이 존재하면 덮어쓸 것인지 사용자 동의란이 출력된다.
 - r : 디렉터리 복사시 필수 옵션. 하위 내용까지 모두 포함하여 복사한다.
 - p : 권한 및 시간에 대한 속성 정보를 유지하면서 복사한다.

 - a : '-p' 옵션에서 링크정보를 포함하여 모든 속성에 대한 정보를 유지하여 복사한다.

==========================================================================================
- mv -
1. 정의 : 파일 또는 디렉터리를 이동할 때 사용하고, 이름을 변경하여 이동이 가능하다.

 

2. 형식
   - #mv [옵션] [원본경로] [대상경로]

 

3. 옵션
   - i : 파일을 이동할 때 대상경로에 같은 파일명이 존재하면 덮어쓸 것인지 사용자 동의란이 출력된다.


※ cp 와 mv 의 차이
   1. cp : 원본을 유지한 채로 대상으로 복사
   2. mv : 원본을 삭제하면서 대상으로 복사

          -> [ mv = 'cp -rp' - 원본 ] 공식으로 표현이 가능하고,

               원본의 속성정보들을 유지한채로 대상으로 이동된다.
     

==========================================================================================
- rm -

1. 정의 : 파일 또는 디렉터리를 삭제할 때 사용

 

2. 형식
   - #rm [옵션] [대상경로]

 

3. 옵션
 - i : 파일을 삭제할 때 삭제할 것인지 사용자 동의란이 출력된다.
 - r : 디렉터리 삭제시 필수 옵션. 하위 내용까지 모두 포함하여 삭제한다.
 - f : 삭제시 사용자의 동의확인이 없이 그냥 무시하여 삭제한다.


==========================================================================================
※ cp, mv, rm 명령어를 사용할 때 알아두기.

1. 다수의 agument 사용
   - #cp [/etc/fstab /etc/inittab /etc/httpd/conf/httpd.conf] [/backup]
     : 다수의 파일(디렉터리)을 복사하려면 띄어쓰기로 구분하여 가장 마지막 자리에 있는
       경로가 대상경로로 쓰이고, 그외의 내용은 원본 경로로 전부 사용된다.

 

2. Alias 를 활용한 BashShell 장점 
  - cp, mv, rm 명령어의 옵션 중 "-i" 의 경우는 $HOME/.bashrc 를 통해서 정의되어 있다.

AND