컴퓨터특강 (unix system programming) unix...

Post on 18-Jan-2020

4 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

20062006년년 봄학기봄학기

문양세문양세

강원대학교강원대학교 컴퓨터과학과컴퓨터과학과

컴퓨터컴퓨터 특강특강 (UNIX System Programming)(UNIX System Programming)

UNIX UNIX 기본기본 명령어명령어

Page 2UNIX System Programmingby Yang-Sae Moon

시간과시간과 날짜날짜 보기보기

현재 시간과 날짜를 보여줌 ($date [-u])

UNIX 기본 명령어

2

Page 3UNIX System Programmingby Yang-Sae Moon

달력달력 보기보기

현재 월 혹은 지정된 년/월의 달력을 보여줌 ($cal [month] [year])

UNIX 기본 명령어

Page 4UNIX System Programmingby Yang-Sae Moon

계산기계산기 사용하기사용하기 (1/2)(1/2)

UNIX에서 제공하는 (공학용) 계산기

$ bc

연산 기호 (+, -, *, /, %, ^, sqrt(x))

유용한 함수 ($bc –l)• s(x) // sin(x)• c(x) // cosine(x)• l(x) // log(x) • e(x) // 지수(exponential)

종료할 때는 “quit” 입력

UNIX 기본 명령어

3

Page 5UNIX System Programmingby Yang-Sae Moon

계산기계산기 사용하기사용하기 (2/2)(2/2)UNIX 기본 명령어

Page 6UNIX System Programmingby Yang-Sae Moon

현재현재 로그인한로그인한 사용자사용자 확인확인 (1/3)(1/3)

현재 로그인한 사용자 Login Name 확인하는 명령어

(동일한 사용자가 두 번 이상 로그인한 경우 중복해서 출력됨)

$ users

현재 로그인한 사용자에 대한 자세한 정보 출력하는 명령어

$ who // Login name, login IP address 등 출력

$ w // 현재 수행중인 Job까지 출력

자신의 Login Name, User ID(uid)와 Group ID(gid)를 확인하는 명령어

$ whoami$ id

UNIX 기본 명령어

4

Page 7UNIX System Programmingby Yang-Sae Moon

현재현재 로그인한로그인한 사용자사용자 확인확인 (2/3)(2/3)UNIX 기본 명령어

Page 8UNIX System Programmingby Yang-Sae Moon

현재현재 로그인한로그인한 사용자사용자 확인확인 (3/3)(3/3)UNIX 기본 명령어

5

Page 9UNIX System Programmingby Yang-Sae Moon

사용자에사용자에 대한대한 정보정보 확인확인 (1/2)(1/2)

사용자(login name 기준)에 대한 정보 확인

$ finger [login_name]

사용자의 이름, Home Directory 등의 정보 확인에 사용

UNIX 기본 명령어

Page 10UNIX System Programmingby Yang-Sae Moon

사용자에사용자에 대한대한 정보정보 확인확인 (2/2)(2/2)UNIX 기본 명령어

6

Page 11UNIX System Programmingby Yang-Sae Moon

다른다른 컴퓨터의컴퓨터의 상태상태 확인확인 (1/2)(1/2)

다른 컴퓨터의 상태(네트워크에서 Accessible한지의 여부)

$ ping host-name // alive or dead check

$ ping –s host-name // packet 송수신 확인

MS-DOS 상에서도 동일한 명령어 사용 가능

UNIX 기본 명령어

Page 12UNIX System Programmingby Yang-Sae Moon

다른다른 컴퓨터의컴퓨터의 상태상태 확인확인 (2/2)(2/2)UNIX 기본 명령어

7

Page 13UNIX System Programmingby Yang-Sae Moon

다른다른 사용자와사용자와 대화하기대화하기 (1/3)(1/3)

다른 사용자와 대화할 수 있는 프로그램

$ talk user-name [terminal-name] // 현재 컴퓨터에 로그인 한 사용자

메신저 출현 이전에 실시간 대화 수단으로 활용되었음

UNIX 기본 명령어

Page 14UNIX System Programmingby Yang-Sae Moon

다른다른 사용자와사용자와 대화하기대화하기 (2/3)(2/3)UNIX 기본 명령어

8

Page 15UNIX System Programmingby Yang-Sae Moon

다른다른 사용자와사용자와 대화하기대화하기 (3/3)(3/3)UNIX 기본 명령어

Page 16UNIX System Programmingby Yang-Sae Moon

파일파일 출력출력 명령어명령어 (1/4)(1/4)UNIX 기본 명령어

파일의 내용을 표준 출력(standard output)으로 출력하는 명령어

$ cat filename

파일 내용이 기본적으로 화면으로 출력되며, 이를 다른 파일로 저장하거

나, 두 개 이상의 파일을 하나로 합칠 수 있음

$ cat test1 test2

$ cat test1 test2 > test3 // redirection

$ cat test1 test2 test3 | more // pipe

9

Page 17UNIX System Programmingby Yang-Sae Moon

파일파일 출력출력 명령어명령어 (2/4)(2/4)UNIX 기본 명령어

Page 18UNIX System Programmingby Yang-Sae Moon

파일파일 출력출력 명령어명령어 (3/4)(3/4)UNIX 기본 명령어

10

Page 19UNIX System Programmingby Yang-Sae Moon

파일파일 출력출력 명령어명령어 (4/4)(4/4)UNIX 기본 명령어

Page 20UNIX System Programmingby Yang-Sae Moon

패턴패턴 검색검색 명령어명령어 (1/5)(1/5)UNIX 기본 명령어

파일의 내용 중에서 특정 패턴을 가지는 줄을 출력

$ grep pattern files

명령어 grep은 주어진 파일들을 읽어서, 해당 패턴을 검색하고, 패턴을

포함하는 줄의 내용을 출력함

$ grep from test2

$ grep “Mr. Bush” test? // test1, test2, testa, testb, …

$ grep from test* // test1, test11, test_kangwon, …

11

Page 21UNIX System Programmingby Yang-Sae Moon

패턴패턴 검색검색 명령어명령어 (2/5)(2/5)UNIX 기본 명령어

Page 22UNIX System Programmingby Yang-Sae Moon

패턴패턴 검색검색 명령어명령어 (3/5)(3/5)UNIX 기본 명령어

12

Page 23UNIX System Programmingby Yang-Sae Moon

패턴패턴 검색검색 명령어명령어 (4/5)(4/5)UNIX 기본 명령어

Page 24UNIX System Programmingby Yang-Sae Moon

패턴패턴 검색검색 명령어명령어 (5/5)(5/5)UNIX 기본 명령어

13

Page 25UNIX System Programmingby Yang-Sae Moon

Page 26UNIX System Programmingby Yang-Sae Moon

파일파일 내용내용 정렬하기정렬하기 (1/4)(1/4)UNIX 기본 명령어

파일의 데이타를 정렬하는 명령어

$ sort [-options] [-o outfile] infiles

주어진 파일들(infiles)의 내용을 정렬한다.(“-o outfile”이 주어진 경우 정렬된 내용을 outfile에 저장한다.)

14

Page 27UNIX System Programmingby Yang-Sae Moon

파일파일 내용내용 정렬하기정렬하기 (2/4)(2/4)UNIX 기본 명령어

Page 28UNIX System Programmingby Yang-Sae Moon

파일파일 내용내용 정렬하기정렬하기 (3/4)(3/4)UNIX 기본 명령어

15

Page 29UNIX System Programmingby Yang-Sae Moon

파일파일 내용내용 정렬하기정렬하기 (4/4)(4/4)UNIX 기본 명령어

Page 30UNIX System Programmingby Yang-Sae Moon

파일파일 분리하기분리하기 (1/4)(1/4)UNIX 기본 명령어

split 명령어는 하나의 파일을 일정한 크기의 여러 개 작은 파일로 분할하

는 명령어이며 다음과 같은 형식을 가짐

$ split [-options] file_name

분할 단위(-l number)을 지정하지 않으면 1000줄씩 분할하여 디스크에

저장하며 이때 저장되는 파일명에 aa 부터 zz까지의 첨자가 붙음

출력 파일명을 지정하지 않으면 default로 xaa, xab, .. 형태로의 파일명

으로 저장됨

16

Page 31UNIX System Programmingby Yang-Sae Moon

파일파일 분리하기분리하기 (2/4)(2/4)UNIX 기본 명령어

Page 32UNIX System Programmingby Yang-Sae Moon

파일파일 분리하기분리하기 (3/4)(3/4)UNIX 기본 명령어

17

Page 33UNIX System Programmingby Yang-Sae Moon

파일파일 분리하기분리하기 (4/4)(4/4)UNIX 기본 명령어

Page 34UNIX System Programmingby Yang-Sae Moon

줄줄, , 단어단어, , 문자문자 수수 세기세기 (1/2)(1/2)UNIX 기본 명령어

파일에 저장된 줄, 단어, 문자의 개수를 세는 명령어

(wc: word count)

$ wc [-options] files

주어진 파일들(files)의 줄 수(-l), 단어 수(-w), 문자 수(-c)를 센다.

명령어 wc는 해당 파일의 크기(예: 프로그램의 라인 수)를 빨리 확인하고

자 할 때 매우 유용하다.

18

Page 35UNIX System Programmingby Yang-Sae Moon

줄줄, , 단어단어, , 문자문자 수수 세기세기 (2/2)(2/2)UNIX 기본 명령어

top related