반응형
while문
- while문은 조건식이 참일 동안에 계속 반복하는 특성을 갖는다.
- 조건이 만족할 때까지 반복한다.
- 무한루프에서 5번 반복 후 while 문을 중지한다. 두 가지 반복문으로 가능하다.
#! /bin/sh
i=1
while [ 1 ] # 조건에 [ 1 ] 또는 [ : ]가 오면 항상 참이 된다.
do
echo "centos 7"
i=`expr $i + 1`
if [ $i -gt 5 ]
then
break
fi
done
exit 0
#! /bin/bash
i=1
while [ $i -le 5 ]
do
echo "TIENE"
i=`expr $i + 1`
done
exit 0
- 입력한 숫자의 각각 홀수의 합과 짝수의 합을 구하기
- 10 = [1 + 3 + 5 + 7 + 9] = [ 2 + 4 + 6 + 8 + 10 ]
#! /bin/bash
echo "입력 : " ; read num
total1=0
i=2
while [ $i -le $num ]
do
total1=`expr $total1 + $i`
i=`expr $i + 2`
done
echo "짝수의 합 : " $total1
total2=0
i=1
while [ $i -le $num ]
do
total2=`expr $total2 + $i`
i=`expr $i + 2`
done
total3=`expr $total1 + $total2`
echo "총합 : " $total3
exit 0
- admin / 1111 과 kedu / 1111로 접속을 할 때까지 반복하며, 접속한 계정이 관리자와 관리자가 아닌 문구를 출력하기
#!/bin/sh
while [ 1 ]
do
echo "ID : " ; read id
echo "PW : " ; read pw
if [ $id = admin ]&&[ $pw = 1111 ]
then
echo "관리자 접속"
break
fi
if [ $id = kedu ]&&[ $pw = 1111 ]
then
echo "관리자가 아닙니다."
break
fi
done
exit
for문
- 다른 프로그래밍 언어에서 사용하던 것과 약간 다른 형태를 가진다.
- 변수에 각각의 값을 대입한 후에 do 안의 '반복할 문장을' 수행하게 된다.
- 그러므로, 값의 개수만큼 반복하게 된다.
for [변수] in [값1] [값2] [값3]
do
[반복할 문장]
done
- 만약에 값이 많아진다면, 비효율적이기 때문에, 다음과 같은 형태를 사용할 수 있다.
for(초기치;조건;증감치)
do
[반복할 문장]
done
- 1부터 10까지의 합을 for을 사용하여 출력하기
#!/bin/sh
hap=0
for((i=1;i<=10;i++))
do
hap=`expr $hap + $i`
done # i가 10까지 반복하여 증가하다가 11이 되면 빠져나온다.
echo "1부터 10까지의 합 : " $hap
exit 0
- 1부터 100까지의 짝수와 홀수의 합을 출력하기
#!/bin/sh
hap1=0 #짝수
hap2=0 #홀수
for((i=1;i<=100;i++))
do
if [ `expr $i % 2` -eq 0 ]
then
hap1=`expr $hap1 + $i`
else
hap2=`expr $hap2 + $i`
fi
done
echo "짝수의 합: " $hap1
echo "홀수의 합: " $hap2
exit 0
- 숫자를 입력하여 해당 숫자의 구구단을 출력하기
#!/bin/sh
echo "숫자 입력 : " ; read dan
for((i=1;i<10;i++))
do
echo "$dan * $i" = `expr $dan \* $i`
done
exit 0
- 1부터 100까지 숫자 중에서 3의 배수와 4의 배수의 합 출력하기
#!/bin/sh
hap=0
for((i=1;i<100;i++))
do
if [ `expr $i % 3` -eq 0 ] || [ `expr $i % 4` -eq 0 ]
then
hap=`expr $hap + $i`
fi
exit 1
done
echo "3의 배수와 4의 배수의 합 : " $hap
exit 0
반응형
'IT > ㄴ Linux Shall Script' 카테고리의 다른 글
[Linux] Shell Script - 다중 if 문 / case 문 / 파일 연산자 [ elif/ case] (0) | 2023.07.21 |
---|---|
[Linux] Shell Script - if 문 기초 [if / else / 비교 연산자] (0) | 2023.07.20 |
[Linux] Shell Script 기초 [echo] (0) | 2023.07.20 |