UNIX System Programming by Yang-Sae Moon
Page 1
Homework #5 (1/3)
다음을 수행한 후 , 결과 파일들을 출력하여 제출한다 .
1. 다음 순서로 수행하여 , 그 결과 파일을 생성한다 . (0) bash 사용 시 , 우선 tcsh 을 수행한다 . ($ tcsh)
(1) Redirection 을 사용하여 아래 수행 결과를 파일에 받는다 .
$ repeat 5 cal 12 2019
(2) 앞서의 파일에 아래 수행 결과를 추가한다 .
$ repeat 2 cal 2020
2. 다음 순서로 수행하여 , 그 결과 파일을 생성한다 .
(1) 다음과 같이 수행한 결과를 역순으로 정렬 (sorting) 하여 임시 파일에 받는 다 .
(pipeline 및 redirection 사용 )
$ ls /dev
(2) 앞서 생성한 임시 파일에서 처음 20 줄과 마지만 20 줄만을 추출하여 결과 파일을 생성한다 . (head 및 tail 명령어 사용 , redirection 사용 )
쉘 , 통신 및 압축 명령어
UNIX System Programming by Yang-Sae Moon
Page 2
Homework #5 (2/3)
3. 다음 명령어들을 순서대로 수행한 후 , 아래 지시에 따라 작업한다 .
$ cp /usr/include/stdio.h .
$ cp stdio.h stdio.x
$ head -50 stdio.x > stdio.y
$ tail -50 stdio.x > stdio.z
$ cat stdio.[y-z] > stdio.w
$ \rm stdio.[w-z]
(1) 히스토리 기능 중 “ !n” 을 사용하여 , 두 번째 명령을 다시 수행한다 . (2) 히스토리 기능 중 패턴 반복을 사용하여 , 네 번째 명령을 다시 수행한다 . (3) 상기 (2) 의 수행을 반복한다 . (tcsh 의 경우 에러 날 것임 )
(4) 다음 히스토리 명령을 수행하여 그 결과를 파일에 받는다 .
$ history 15
쉘 , 통신 및 압축 명령어
UNIX System Programming by Yang-Sae Moon
Page 3
Homework #5 (3/3)
4. 아래 내용을 수행하는 과정의 화면을 캡쳐한다 .
(1) /tmp 디렉토리에서 다음 두 개 파일을 자신의 계정에 복사한다 .
첫 번째 파일 : unixsys.tar.gz
두 번째 파일 : linuxsys.tar.gz
(2) 복사한 두 개의 파일을 자신의 계정에 푼다 . ( 압축 해제 및 tar) (3) 풀어진 내용을 “학번 -1.tar” 형태의 tar 파일 하나로 묶는다 . (4) “ 학번 -1.tar” 파일을 복사하여 “학번 -2.tar” 파일을 만든다 . (5) “ 학번 -1.tar” 파일은 “학번 -1.tar.gz” 로 압축하고 , “ 학번 - 2.tar” 는 “학번 -2.tar.gz” 로 압축한다 .
(6) 압축한 두 파일을 /tmp 디렉토리에 다시 복사한다 .
Due Date: 10/16( 수 )
쉘 , 통신 및 압축 명령어