[강좌][shell] 숫자 계산법에 대하여

======================================================================

               SHELL PROGRAMMING [10]  숫자 계산법

본 강좌는 본인의 허락없이 무단 복사하거나 타 사이트에 등록하는것을

금지 합니다.  –  서진우(alang at sysmng.com)

======================================================================

10.1 숫자 계산

쉘스크립터에서도 다른 프로그램언어와 같이 숫자 연산을 할수가 있다.

이때 사용되는 것이 expr 이다.

사용되는 연산자에는 + (더하기), – (빼기), * (곱하기), / (나누기),

% (나머지구함) 이 있다.

사용예 —————————————-

A=`expr $1 + $2 + \\( $3 * 3 \\)`

echo $A

———————————————–

위와 같이 사용하면 된다. 간단히 설명하면 argument로 받아들인 $1,$2,

$3 값을 연산하여 그 값이 A 라는 변수값이 되는것이다. 여기서 유의할

점은 괄호 ( )를 사용할수 있는데 괄호를 사용할때는 반드시 앞에 \\ 을

붙여주도록 한다.

예제 —————————————————

#!/bin/sh

chk=`date | awk ‘{print $3}’`

chk2=`expr chk % 2`

if [ $chk2 -eq “0” ]

then

    tar czvf /backup/A/backup.tgz *

else

    tar czvf /backup/B/backup.tgz *

fi

——————————————————-

위의 예제는 나머지 값(%)을 이용하여 홀수날과 짝수날을 구분하여

각각 다른 백업공간에 백업을 하도록 하는 스크립트 이다. 스크립트를

분석해 보면..

date 명령어를 사용하면 날짜가  출력되는데 출력된  항목중 3번째 항목

(일짜) 를 2로 나누어서 나머지값이 0 (짝수날) 일때는 /backup/A 디렉

토리에 데이타를 백업 시키고 그렇지 않으면 /backup/B 디렉토리에 백업

시키도록 한다.

서진우

슈퍼컴퓨팅 전문 기업 클루닉스/ 상무(기술이사)/ 정보시스템감리사/ 시스존 블로그 운영자

You may also like...

페이스북/트위트/구글 계정으로 댓글 가능합니다.