IT기술/Solaris

3-1 유닉스의 개념 및 기초 명령어

dobbby 2013. 10. 2. 09:23
반응형

Unix의 특징 및 구성

 1. Unix의 특징

  1) 파일이라는 단일한 입출력 인터페이스 사용

  2) 시스템 관련 설정 사항을 텍스트 파일에 저장

  3) 이식성

  4) 프로그램들은 설정 파일과 데몬 프로세스에 의해 구동

 

 2. Unix의 구성

  1) Kernel

   a. 유닉스에서 핵심부분

   b. 하드웨어 관리 담당

    - File systems

    - Device management

    - Process management

    - Memory management

 

  2) Shell

   a. 기능

    - User Interface

      사용자와 Kernel

    - Command Interpreter

      명령어 해석기

 

   b. Shell 종류

    - Bourne (AT & T)

    - C

    - Korn

    - Bash

    - Z

    - TC

  * Shell이 잘못되면 로그인이 불가능

 

  3) Directory Tree

   - 데이터를 하드 디스크에 저장하기 위한 디렉토리와 파일로 이루어진 구조

      Windows                  Unix

      C:\                               /

Document and Settings     /export/home

Program Files                  /opt

Windows                        /usr

제어판                            /etc        * 재부팅 후 변경내용을 유지해야 하는 경우 /etc의 시스템 설정파일을 변경

장치관리자                      /dev

 

Accessing File and Directory

 1. Path Name

  1) Directory tree에서 특정 file이나 directory 위치를 결정

  2) Object name간의 구분은 ' / '
  3) Object name은 directory name 이나 file name.
  4) 가장 처음  ' / ' 는 root directory

  5) Path Name Types

   a. Absolute path name (절대경로)
    - 항상 ' / ' 로 시작
     # cd /export/home/user1
     # cd /export/home/user1/dir1
     # ls /export/home/user1/dir1/red.vi
 - full path name

   b. Relative path name (상대경로)
 - ' / '로 시작하지 않는다
     # cd user1
 - 현재 directory가 기준
 - 경우에 따라 ' ./ ' 또는 ' ../ '사용
     # cd ./user1
     # cd ../home
     # cd dir1/red.vi

 

 2. File과 Directory의 Naming Conventions

  1) 이름은 최대 255자까지 가능
  2) Alphabet, numeric, hyphen (-), underscore (_), period (.)만을 사용하는 것이 좋다.
  3) 소문자를 사용하는 것이 좋다.
  4) asterisks (*), ampersands (&), pipes (|), quotes (“ “), dollar signs ($) 은 사용하지 않는 것이 좋다.
  5) space는 사용하지 않는 것이 좋다.
  6) period (.)이 아닌 다른 문자로 시작하는 것이 좋다.
  7) window와 달리 확장자 (extension) 개념이 없다.
  8) 확장자를 가진 file이나 directory같이 표현할 수 있다.


 3. Accessing Directory

  1) cd 디렉토리 변경

    a. 명령어
  - cd change directory
 b. 절대 경로명을 사용하여 변경

     # cd /export/home/
    c. 상대 경로명을 사용하여 변경
     - .   현재 directory
     - ..  상위 directory
 

  2) pwd 현재 디렉토리 표시

   - pwd (print working directory)
  

  3) ls 디렉토리 내용 표시

   a. ls pathname

   b. pathname에 명시한 내용 표시

   c. ls -a 숨김 파일 표시

   d. ls -l long listing 표시

   e. ls -Id Individual Directories 표시

   f. ls -R 하위 디렉토리 표시

 
  4) mkdir

   a. definition

    - 디렉토리를 생성

    - 절대경로나 상대경로 사용 가능

    - 하나의 명령으로 여러개의 디렉토리 생성
   b. command format

    - mkdir [-p] directory_name

       -p 하위 디렉토리까지 생성

  5) rmdir

   a. definition

    - 빈 디렉토리 삭제

    - 파일을 포함하고 있는 디렉토리는 삭제 불가능

       rm -r로 삭제

   b. command format

    - rmdir directory_name

 

  6) Shell Metacharacters 쉘에서 특별한 의미를 표시하는 특수 문자나 기호

   a. ~ tilde

    - 현재 사용자의 홈 디렉토리

    - 절대 경로명의 약어

    - Bourne Shell을 제외한 모든 Shell에서 사용

 

   b. ~username

    - username의 홈 디렉토리

 

   c. * asterisk

    - zero or more character

    - hidden file은 제외

 

   d. ? question mark

    - single character

    - hidden file은 제외

  

   e. [] square brackets

    - 한 문자를 치환하는 match set

    - 한 문자를 치환하는 character range

    - 대소문자 구분

    - 파일, 디렉토리 이름으로 사용하지 않는 것이 좋다.

    - [akf] a 또는 k 또는 f

    - [a-z] a 또는 b 또는 ... 또는 z

    - [A-Z] A 또는 B 또는 ... 또는 Z

    - [0-9] 0 또는 1 또는 ... 또는 9

    - [abc] = [cab] 순서는 관계 없다.

 

   f. <> redirect

    - < : 표준입력(keyboard) 재지정

    - > : 표준 출력(screen) 재지정

    - >> : 명시한 내용을 지정한 파일에 추가

 

   g. | pipe

    - 첫번째 명령의 결과가 다음 명령의 input으로 사용

    - ls -l | more

 

 4. Accessing File

  1) file

   a. definition

    - file 의 type을 표시

   b. commnad format

    - file filename

   c. file type

    - text

      ASCII text, English text, command text, executable shell scripts

    - data

      application에 의해 생성된 파일

      file type을 결정하지 못하고 '데이터'로 표시

    - executable or binary (실행 파일)

      ELF(extensible linking format) 32-bit MSB 실행가능 SPARC버전 1

 

  2) cat

   a. definition

    - text file의 내용을 표준 출력으로 표시

    - concatenate

    - 내용이 작은 파일을 보고자 할 때 사용

    - 수정은 되지 않는다.

   b. command format

    - cat filename

    - cat > filename

 

  3) more

   a. definition

    - text file의 내용을 표준 출력으로 표시

    - 내용이 많은 파일을 보고자 할 때 사용

    - 수정은 되지 않는다.

   b. command format

    - more filename

      spacebar    다음 화면 표시

      return         다음 라인 표시

      b               이전 화면 표시

      f                다음 화면 표시

      h               help

      q               종료

      /string        string 검색

      n               다음 string 검색

 

  4) head vs tail

   a. definition

    - head

       파일의 첫번째 10 라인을 표시

    - tail

       파일의 마지막 10 라인을 표시

   b. command format

    - head [-n] filename

  

  5) wc

   a. definition

    - 파일에 포함된 라인 수, 단어 수, 문자 수 산출

   b. command format

    - wc [-lwcm] filename

   c. wc command options

      -l  라인 수 표시

      -w 단어 수 표시

      -c byte 수 표시

      -m 문자 수 표시

      * 옵션이 없으면 라인 수, 단어 수, 문자 수 표시

 

  6) cp

   a. definition

    - 파일이나 디렉토리를 복사

    - 다른 경로에 동일한 이름으로 복사 가능

       파일이 없는 경우: 생성

       파일이 존재할 경우: 덮어씌움

   b. command format

    - cp [-ir] source_file destination_file

    - cp [-ir] source_file destination_directory

      -p 파일 정보도 복사

 

  7) mv

   a. definition

    - 파일이나 디렉토리를 이동, 또는 이름 변경한다.

    - 단지 위치 이동이나 이름을 변경하므로 내용은 변경되지 않는다.

    - 타겟 디렉토리가 없으면 새로 생성한다

   b. command format

    - mv [-i] source target_file

    - mv [-i] source target_directory

 

  8) rm

   a. definition

    - 파일이나 디렉토리를 삭제

   b. command format

    - rm [-i] file

   

  9) touch

   a. definition

    - 파일이 존재하지 않는 경우

     empty file (size=0) 생성

    - 파일이 존재하는 경우

       파일의 접근시간, 수정시간 변경

       ex) touch -t 12190816 sample (mmdd 시간 분)

    b. command format

     - touch filename

 

반응형