unix unbounded a beginning approach

43
HANNAM Univ. HANNAM Univ. UNIX Unbounded UNIX Unbounded A Beginning Approach A Beginning Approach 이 이 이 이 이 이 Home : nimilx2.hannam.ac.kr Home : nimilx2.hannam.ac.kr E-mail : E-mail : sh [email protected] Tel : +82-42-629-7559 Tel : +82-42-629-7559

Upload: janna

Post on 06-Jan-2016

39 views

Category:

Documents


1 download

DESCRIPTION

UNIX Unbounded A Beginning Approach. 이 성 현 Home : nimilx2.hannam.ac.kr E-mail : [email protected] Tel : +82-42-629-7559. 목차. 파일 읽기 쉘 재지정 개선된 파일 출력 파일명 치환 추가적인 파일 조작 명령어 UNIX 내부 구조 : 파일 시스템 요약. 질의 및 응답 실습 예제. 파일 읽기. Vi 편집기의 읽기 전용 버전 : view 명령어 큰 사이즈의 파일을 읽는데 유용한 읽기 도구 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: UNIX Unbounded A Beginning Approach

HANNAM HANNAM Univ.Univ.

UNIX UnboundedUNIX UnboundedA Beginning ApproachA Beginning Approach

이 성 현이 성 현Home : nimilx2.hannam.ac.krHome : nimilx2.hannam.ac.kr

E-mail : E-mail : [email protected] : +82-42-629-7559Tel : +82-42-629-7559

Page 2: UNIX Unbounded A Beginning Approach

2

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

목차목차

파일 읽기

쉘 재지정

개선된 파일 출력

파일명 치환

추가적인 파일 조작 명령어

UNIX 내부 구조 : 파일 시스템

요약

질의 및 응답

실습 예제

Page 3: UNIX Unbounded A Beginning Approach

3

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

파일 읽기파일 읽기 Vi 편집기의 읽기 전용 버전 : view 명령어

■ 큰 사이즈의 파일을 읽는데 유용한 읽기 도구■ 파일이 변경된 상태에서 저장되는 것을 방지

Page 4: UNIX Unbounded A Beginning Approach

4

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

파일 읽기파일 읽기 파일 읽기 : pg 명령어

■ 한번에 한 화면씩 파일의 내용을 보기를 원하는 경우에 사용■ 프롬프트 (:) 기호는 화면의 하단에 위치하며 , 파일의 나머지 부분에 대해 계속

보기를 원할 경우 [Enter] 키를 누른다 .■ 파일의 끝에 EOF(End of File) 메시지 출력

Page 5: UNIX Unbounded A Beginning Approach

5

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

파일 읽기파일 읽기 파일 읽기 : pg 명령어

■ 명령어 옵션

옵션 동작

-n 한 글자로 된 명령에 대해 [Enter] 키를 누르지 않고 실행되도록 명령

-s 메시지와 프롬프트를 역상으로 출력

-num 한 화면에 출력되는 줄의 수를 정수 num 으로 설정 , 기본은 23 줄

-p str 프롬프트를 : 에서 str 로 지정한 문자열로 변경

+line-num Line-num 으로 지정한 줄부터 파일의 내용을 출력

+/pattern 지정한 패턴이 처음 있는 부분을 포함한 줄부터 출력

Page 6: UNIX Unbounded A Beginning Approach

6

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

쉘 재지정쉘 재지정 쉘 재지정

■ 쉘이 제공하는 가장 유용한 기능중의 하나■ 명령어의 입력 또는 출력 방향을 변경■ 제공하는 기능

▶ 프로세스의 출력을 파일로 저장▶ 프로세스의 입력으로 파일을 사용

출력 재지정

■ 프로세스의 출력을 파일로 저장■ 이후에 저장한 파일을 편집하거나 또는 다른 프로세스에 대한 입력으로 사용할 수

있다■ 명력 형식

▶ command > filename▶ command >> filename

Page 7: UNIX Unbounded A Beginning Approach

7

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

쉘 재지정쉘 재지정 출력 재지정

■ ls > mydir.list

Page 8: UNIX Unbounded A Beginning Approach

8

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

쉘 재지정쉘 재지정 출력 재지정

■ date >> mydate.list

Page 9: UNIX Unbounded A Beginning Approach

9

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

쉘 재지정쉘 재지정 입력 재지정

■ 지정한 파일을 다른 명령어의 입력으로 전달하거나 프로그램을 실행할 수 있는 기능을 제공

■ > 기호를 입력 재지정 연산자로 인식■ 명령 형식

▶ command < filename▶ command << filename

Page 10: UNIX Unbounded A Beginning Approach

10

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

쉘 재지정쉘 재지정 cat 명령어 다시 살펴보기

■ 파일 생성▶ cat 명령어와 출력 재지정 문자 > 기호를 함께 이용하여 파일을 생성▶ 작은 파일을 신속하게 생성하는데 유용

Page 11: UNIX Unbounded A Beginning Approach

11

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

쉘 재지정쉘 재지정 cat 명령어 다시 살펴보기

■ 파일 복사하기▶ cat 명령어와 출력 재지정 연산자를 함께 사용하여 파일을 복사

Page 12: UNIX Unbounded A Beginning Approach

12

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

개선된 파일 출력개선된 파일 출력 pr 명령어

■ lp 명령어는 파일의 형식과 외형을 변화시키지 않음■ 파일 형태를 개선시킬 수 있는 명령어가 요구됨■ pr 명령어

▶ 프린터 또는 화면에 출력하기 전에 파일의 형식을 지정하기 위한 명령어

Page 13: UNIX Unbounded A Beginning Approach

13

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

개선된 파일 출력개선된 파일 출력 pr 명령어

■ 명령어 옵션

옵션 동작

+page 출력이 시작되는 페이지를 지정 , 기본은 1 줄

-columns 지정된 컬럼 수로 화면에 출력 , 기본은 1 칸

-a 페이지를 교차해서 출력

-d 두 줄 간격으로 화면에 출력

-h string 지정한 str 문자열로 표제의 파일명 부분을 치환

-l number 지정한 수만큼의 줄을 한 페이지에 출력 , 기본은 66 줄

-m 다중 컬럼으로 지정한 파일을 출력

-p 각 페이지의 끝에서 터미널 벨소리와 함께 잠시 중단

-s charater 지정한 단일 문자로 컬럼들을 분리 , 기본은 [Tab]

-t 다섯 줄의 표제와 다섯 줄의 바닥글을 생략

-w number 지정한 수의 문자를 줄의 폭으로 설정 , 기본은 72 칸

Page 14: UNIX Unbounded A Beginning Approach

14

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

파일 조작 명령어파일 조작 명령어 파일 복사 : cp 명령어

■ 파일의 복사본을 생성하고자 할 때 사용하는 명령어■ 일반적으로 하나의 디렉토리에서 다른 디렉토리로 파일을 복사할 때 cp

명령어를 사용

Page 15: UNIX Unbounded A Beginning Approach

15

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

파일 조작 명령어파일 조작 명령어 파일 복사 : cp 명령어

■ 명령어 옵션옵션 동작

-b 파일이 이미 존재하면 지정된 파일의 백업을 만듦

-i 대상 파일이 이미 존재하면 사용자에게 물어봄

-r 디렉토리에서 새로운 디렉토리로 복사

Page 16: UNIX Unbounded A Beginning Approach

16

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

파일 조작 명령어파일 조작 명령어 파일 이동 : mv 명령어

■ 파일을 한 장소에서 다른 장소로 이동하거나 파일이나 디렉토리의 이름을 변경하는 경우 사용

Page 17: UNIX Unbounded A Beginning Approach

17

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

파일 조작 명령어파일 조작 명령어 파일 이동 : mv 명령어

■ 명령어 옵션

옵션 동작

-b 파일이 이미 존재하면 지정된 파일의 백업을 만듦

-i 목적 파일이 이미 존재하면 사용자에게 물어봄

-f 파일이 이미 존재하면 확인을 묻지 않고 목적 파일을 삭제

-v 실행된 결과를 출력

Page 18: UNIX Unbounded A Beginning Approach

18

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

파일 조작 명령어파일 조작 명령어 파일 연결하기 : ln 명령어

■ 기존의 파일과 새로운 파일명 사이의 연결을 생성하는 경우에 사용■ 기존의 파일에 대해 추가적인 이름을 생성하여 , 다른 이름으로 같은 파일을

참조할 수 있는 것을 의미■ 동일한 파일에 대해 다른 파일명만을 생성

Page 19: UNIX Unbounded A Beginning Approach

19

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

파일 조작 명령어파일 조작 명령어 파일 연결하기 : ln 명령어

■ 중요 개념▶ cp, mv, ln 명령어는 모두 파일명에 영향을 주고 비슷한 방법으로 사용▶ 실질적인 연산으로는 매우 다른 기능을 수행하며 다른 용도로 사용▶ cp : 새로운 파일을 생성▶ mv : 파일명을 변경하거나 파일을 한곳에서 다른 곳으로 이동▶ ln : 존재하는 파일에 대하여 추가적인 이름을 생성

Page 20: UNIX Unbounded A Beginning Approach

20

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

파일 조작 명령어파일 조작 명령어 단어 수 세기 : wc 명령어

■ 하나의 파일 또는 지정한 파일의 목록에서 줄 , 단어 또는 문자의 개수를 알아보기 위한 경우에 사용

Page 21: UNIX Unbounded A Beginning Approach

21

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

파일 조작 명령어파일 조작 명령어 단어 수 세기 : wc 명령어

■ 명령어 옵션

옵션 동작

-l 줄의 수를 계산

-w 단어의 수를 계산

-c 문자의 수를 계산

Page 22: UNIX Unbounded A Beginning Approach

22

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

파일명 치환파일명 치환 파일명 치환 ?

■ 특정 패턴에 일치하는 파일만을 선택할 수 있는 기능을 제공■ 패턴들은 쉘에서 특별한 의미를 가지고 있는 어떤 문자들을 사용하여 지정한

파일명에 의해 생성■ 메타 문자

▶ 특별한 의미를 가지고 있는 특수 문자▶ 메타 문자의 종류

옵션 동작

? 임의의 단일 문자를 치환

* 공백 문자열을 포함한 임의의 문자열을 치환

[list] List 에 지정된 임의의 단어를 치환

[!list] List 에 지정되지 않은 임의의 단어를 치환

Page 23: UNIX Unbounded A Beginning Approach

23

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

파일명 치환파일명 치환 ? 메타 문자

■ ? 는 파일명을 치환하는 경우 , 쉘이 치환의 조건을 단일 문자로 해석하여 , 지정한 ?의 형태에 따라 치환이 확장되는 특수 문자

Page 24: UNIX Unbounded A Beginning Approach

24

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

파일명 치환파일명 치환 * 메타문자

■ * 는 쉘이 파일 이름에서 어떠한 수의 대체 문자로 해석하고 이에 따라 파일 이름을 확정

Page 25: UNIX Unbounded A Beginning Approach

25

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

파일명 치환파일명 치환 [] 메타문자

■ 지정한 패턴 문자열의 시작 부분과 끝 부분을 감싸며 , 지정한 파일명의 패턴에 따라 파일명을 확장

■ [] 안에 ! 표를 사용하면 지정한 문자열을 포함하지 않은 패턴으로 파일명이 확장

Page 26: UNIX Unbounded A Beginning Approach

26

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

파일명 치환파일명 치환 메타 문자와 숨겨진 파일

■ 파일명이 . 으로 시작하는 숨겨진 파일을 출력할 때 사용■ .* 파일명을 뒤에 오는 문자에 대해 , 문자의 형태나 수에 관계없이 지정한

패턴에 일치하는 파일명을 출력하는 파일명으로 확장

Page 27: UNIX Unbounded A Beginning Approach

27

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

추가적인 파일 관리 명령어추가적인 파일 관리 명령어 파일 찾기 : find 명령어

■ 계층적인 디렉토리에서 주어진 검색어와 일치하는 파일을 찾는 경우■ 다른 유닉스 명령어와 사용법에 차이가 있음

Page 28: UNIX Unbounded A Beginning Approach

28

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

추가적인 파일 관리 명령어추가적인 파일 관리 명령어 파일 찾기 : find 명령어

■ 실행 과정▶ 찾고자 하는 경로명을 지정하면 , 지정된 디렉토리의 하위 디렉토리까지 반복적으로 검색을 실행▶ 이러한 검색 방식을 재귀적인 검색 (recursive search) 라고 한다 .

■ 명령어 옵션

옵션 동작

-name filename 주어진 파일명을 가진 파일을 찾음

-size +-n 크기가 n 인 파일을 찾음

-type 파일 유형 지정한 접근 권한을 가지는 파일을 찾음

-atime +-n N 일전에 접근한 파일을 찾음

-mtime +-n N 일 전에 수정한 파일을 찾음

-newer filename

파일명보다 최근에 수정한 파일을 찾음

Page 29: UNIX Unbounded A Beginning Approach

29

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

추가적인 파일 관리 명령어추가적인 파일 관리 명령어 파일의 처음 부분 출력하기 : head 명령어

■ 지정한 파일의 처음 부분을 출력■ 파일의 처음 몇 라인을 빠르게 검사하는 경우에 사용

Page 30: UNIX Unbounded A Beginning Approach

30

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

추가적인 파일 관리 명령어추가적인 파일 관리 명령어 파일의 처음 부분 출력하기 : head 명령어

■ 명령어 옵션

옵션 동작

-l 지정된 라인 수만큼 출력 , 기본 옵션

-c 지정된 문자 수 만큼 출력

Page 31: UNIX Unbounded A Beginning Approach

31

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

추가적인 파일 관리 명령어추가적인 파일 관리 명령어 파일의 끝 부분 출력하기 : tail 명령어

■ 지정한 파일의 끝 부분을 출력■ 파일의 끝 부분을 빠르게 검사하는 경우에 사용

Page 32: UNIX Unbounded A Beginning Approach

32

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

추가적인 파일 관리 명령어추가적인 파일 관리 명령어 파일의 끝 부분 출력하기 : tail 명령어

■ 명령어 옵션

옵션 동작

-l 지정된 라인 수만큼 출력 , 기본 옵션

-c 지정된 문자 수 만큼 출력

Page 33: UNIX Unbounded A Beginning Approach

33

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

추가적인 파일 관리 명령어추가적인 파일 관리 명령어 파일의 부분 선택하기 : cut 명령어

■ 파일에서 지정한 컬럼 또는 항목들에 대해 “잘라내기”를 원하는 경우에 사용

Page 34: UNIX Unbounded A Beginning Approach

34

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

추가적인 파일 관리 명령어추가적인 파일 관리 명령어 파일의 부분 선택하기 : cut 명령어

■ 명령어 옵션옵션 동작

-f 필드의 위치를 지정

-c 문자의 위치를 지정

-d 필드 구분 문자 지정

Page 35: UNIX Unbounded A Beginning Approach

35

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

추가적인 파일 관리 명령어추가적인 파일 관리 명령어 파일 결합하기 : paste 명령어

■ 파일을 줄 단위로 결합하거나 적어도 두 개의 파일을 결합하여 새로운 파일을 생성

Page 36: UNIX Unbounded A Beginning Approach

36

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

추가적인 파일 관리 명령어추가적인 파일 관리 명령어 파일 결합하기 : paste 명령어

■ 명령어 옵션옵션 동작

-d 필드 구분 문자 지정

Page 37: UNIX Unbounded A Beginning Approach

37

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

추가적인 파일 관리 명령어추가적인 파일 관리 명령어 또 다른 페이지 내용 보기 : more 명령어

■ 사용자의 편의를 위해서 내용 보기를 제공하는 명령어■ pg 명령어처럼 more 명령어를 사용하여 파일의 내용을 볼 수 있음

Page 38: UNIX Unbounded A Beginning Approach

38

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

추가적인 파일 관리 명령어추가적인 파일 관리 명령어 또 다른 페이지 내용 보기 : more 명령어

■ 명령어 옵션옵션 동작

-line 지정된 라인 수만큼 화면에 출력

+line-number

Line-number 에서 시작

+/pattern Pattern 을 포함하는 라인 위의 두 라인에서 시작

-c 스크롤 대신 각 페이지를 출력하기 전에 스크린을 지움

-d [Hit space to continue, Del to abort] 프롬프트 출력

Page 39: UNIX Unbounded A Beginning Approach

39

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

UNIX UNIX 내부 구조 내부 구조 : : 파일 시스템파일 시스템 유닉스 디스크 구조

■ 유닉스 시스템에서 디스크는 표준 블록 장치이다 .■ 네 부분으로 구분

▶ 부트 (boot) 블록 : 시스템 부팅시에 동작하는 특수한 프로그램인 부팅 프로그램을 포함▶ 슈퍼 (super) 블록 : 디스트에 대한 정보를 포함

디스크 블록의 총 개수 사용하지 않는 블록의 개수 바이트 블록 크기 사용한 블록의 개수

▶ i-note list 블록 : i-node 의 목록을 관리 파일 접근 권한 소유자 그룹 아이디 파일 연결 개수 마지막 수정 시간 마지막 접근 시간 일반 파일과 디렉토리 파일의 블록 위치 특수 파일을 위한 장치 식별 번호

▶ 파일과 디렉토리 블록 : 루트 디렉토리를 포함하는 블록의 위치를 포함 유닉스 디렉토리는 파일명 목록과 연관된 i-node 번호를 포함

Page 40: UNIX Unbounded A Beginning Approach

40

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

UNIX UNIX 내부 구조 내부 구조 : : 파일 시스템파일 시스템 함께 구성하기

■ 유닉스 디렉토리 i-node 의 구성 과정▶ 로그인 : 사용자의 홈 디렉토리를 찾은 뒤 루트 디렉토리를 읽어 홈 디렉토리의 i-node 번호를

저장▶ cd 명령어 : 디렉토리 변경시 새로운 디렉토리의 i-node 번호를 기존 번호와 대체▶ vi, cat 명령어 : 지정한 파일명을 위해 검색하고 읽어 들임 , i-node 리스트에는 각 파일명과

연결된 i-node 들이 존재 , 이들 i-node 를 찾아 기존 번호와 대체

Page 41: UNIX Unbounded A Beginning Approach

41

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

요약요약 파일 시스템에서 i-node 의 의미

파일 관리 명령어들의 이해

쉘 재지정

Page 42: UNIX Unbounded A Beginning Approach

42

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

질의 및 응답질의 및 응답

Page 43: UNIX Unbounded A Beginning Approach

43

Network Lab.Network Lab.

HANNAM HANNAM Univ.Univ.

유닉스 이론 및 실습

실습실습