운영체제/shell(linux)

shell - 정수형, 산술연산( let, expr, $(()) ), read

MIN--A 2021. 7. 20. 01:26
728x90

변수에 옵션 부여해서 선언 (언어처럼 사용)

# declare ~

-r : readonly

-a : array

-i : integer  

# NUM=10+10 
# echo $NUM 
10+10   	//20이 아닌 10+10이 출력 

# declare -i NUM 		//int 형으로 선언 
# NUM=10+10 
# echo $NUM 
20

 

 

산술연산 let, expr, $(())

1)let

변수 이름만으로 연산이 가능 ($기호 없어도 된다)

# let "~~~"

num1=20
num2=30

# let "result = num1 + num2"
echo "$num1 + $num2 = $result"


결과
20 + 30 = 50

 

2)expr

# `expr ~ `

곱셈과 괄호는 \*, \(, \) 표시

expr을 사용할 때는 변수와 연산기호 사이에 띄어쓰기 

` : ~위에 있는 표시

num1=20
num2=30

# result=`expr $num1 + $num2`
echo "$num1 + $num2 = $result"

결과
20 + 30 = 50

 

3)$(())

괄호 안에서 연산 가능

곱하기 기호도 그대로 사용가능 

num1=20
num2=30

# echo "$num1 + $num2 = $((num1+num2))"

결과 
20 + 30 = 50

 

 

입력받기 (C에서 scanf)

# read ~

echo -n "Login Name: " 		//-n 옵션은 줄바꿈 없이 user를 입력받기 위해 
read user
echo $user

 

728x90