구구단 3단 출력하기
#! /bin/bash
for i in `seq 1 9`
do
A=`expr $i \* 3`
echo " 3 x $i = $A"
done

전체 구구단 출력하기
#! /bin/bash
for i in `seq 1 9`
do
for j in `seq 1 9`
do
A=`expr $i \* $j`
echo " $i x $j = $A"
done
done

사진 설명을 입력하세요.
#! /bin/bash
for i in `seq 9`
do
for dan in `seq 2 9`
do
value=`expr $i \* $dan `
if [ $value -lt 10 ]
then
echo -n "$dan x $i = 0$value "
else
echo -n "$dan x $i = $value "
fi
done
echo " "
done

while 문으로 바꿔서 해보기
#! /bin/bash
for i in `seq 9`
do
dan=2
while [ $dan -lt 10 ]
do
value=`expr $i \* $dan `
if [ $value -lt 10 ]
then
echo -n "$dan x $i = 0$value "
else
echo -n "$dan x $i = $value "
fi
dan=`expr $dan + 1` -- 증가값이 없으면 무한루프 돌아감 !!
done
echo " "
done

이중 while문으로 써보기
#! /bin/bash
i=1
while [ $i -lt 10 ]
do
dan=2
while [ $dan -lt 10 ]
do
value=`expr $i \* $dan `
if [ $value -lt 10 ]
then
echo -n "$dan x $i = 0$value "
else
echo -n "$dan x $i = $value "
fi
dan=`expr $dan + 1`
done
echo " "
i=`expr $i + 1`
done
3단하고 7단만 나타내기
#! /bin/bash
i=1
while [ $i -lt 10 ]
do
dan=2
while [ $dan -lt 10 ]
do
if [ $dan -eq 3 -o $dan -eq 7 ]
then
value=`expr $i \* $dan `
if [ $value -lt 10 ]
then
echo -n "$dan x $i = 0$value "
else
echo -n "$dan x $i = $value "
fi
fi
dan=`expr $dan + 1`
done
echo " "
i=`expr $i + 1`
done

▶case 구문
#! /bin/bash
echo - n " 당신의 직업은 리눅스 엔지니어입니까 (Y|N)"
read _job
case "$_job" in
y|Y)
echo " 당신의 직업은 리눅스 엔지니어입니다."
exit ;;
n|N)
echo " 당신의 직업은 모르겠군요"
exit ;;
*) --나머지 모든것
echo " 잘못입력하였습니다.!!"
exit ;;
esac

p.46
#! /bin/bash
echo -n "
[1] start [2]stop [3]restart "
read _job
case "$_job" in
1)
systemctl start httpd;;
2)
systemctl stop httpd;;
3)
systemctl restart httpd;;
*)
echo" ";;
esac
#! /bin/bash
echo -n "
[1] start [2]stop [3]restart "
read _job
case "$_job" in
1)
systemctl start httpd
clear --화면 지우기
ps aux | grep 'httpd' | grep -v grep -- 프로그램실행시 관련정보 보기
exit;;
2)
systemctl stop httpd
ps aux | grep 'httpd' | grep -v grep
exit;;
3)
systemctl restart httpd
ps aux | grep 'httpd' | grep -v grep
exit;;
*)
echo" ";;
esac

쉘 프로그램 응용
1) 이름을 입력받아 빈파일을 10개 만드시오
2)쉘 프로그램에 넣기
3)find로 만든 파일만 출력하기
#! /bin/bash
echo -n "생성 할 파일명을 입력하시오:"
read _file
for ((i=1; i<11; i++))
do
touch $_file$i.txt
done
find . -name "$_file*"
4)제거 하기
rm -rf *.txt
▶사용자 생성하기
#! /bin/bash
echo -n "adder ID :"
read _user
echo -n "Passwd: "
read _pass
useradd $_user
echo $_pass | /usr/bin/passwd --stdin $_user
echo " "
echo " OK "
[root@localhost ~]# vi uradd.sh
[root@localhost ~]# sh uradd.sh
adder ID :young100
Passwd: 1234
young100 사용자의 비밀 번호 변경 중
passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.
OK
------------↓화면출력
[root@localhost ~]# su korea
[korea@localhost root]$ su young100
암호:
[young100@localhost root]$
---------------------
#! /bin/bash
echo -n "adder ID :"
read _user
echo -n "Passwd: "
read _pass
useradd $_user
echo $_pass | /usr/bin/passwd --stdin $_user
echo " "
echo " OK "
clear
ls -l /home/
'리눅스' 카테고리의 다른 글
[ 17일차 ] APM 설치하기 php, mysql 실행해보기 (0) | 2022.06.13 |
---|---|
[ 16일차 ] 리눅스 총 정리 + 정보처리기사문제 정답 (0) | 2022.06.10 |
[ 15일차 ] 리눅스 쉘 프로그램 [fedora20_8_shell. ppt] (0) | 2022.06.10 |
[ 14일차 ] 리눅스 연습문제 + [fedora20_4 ppt] 이론, [fedora20_5_apm ppt] 이론 (0) | 2022.06.10 |
[ 14일차 ] 데몬리스타트, 이름변경하기 명령어 (0) | 2022.06.10 |