1. 성적의 좋음, 나쁨 판단을 구현하기 위한 Use Case
#! /bin/bash
read -p "please input your scores:" scores
case $scores in
8[5-9]|9[0-9]|100)
echo "A"
;;
7[5-9]|8[0-4])
echo "B"
;;
6[0-9]|7[0-4])
echo "C"
;;
*)
echo "D"
esac
2. 20명의 사용자를 생성하려면 사용자 접두사와 초기 비밀번호를 사용자가 입력합니다.
#! /bin/bash
for((i=0;i<20;i++))
do
if [ $i -lt 10 ];then
user=test0$i
else
user=test$i
fi
if ! id -u $user &> /dev/null
then
useradd $user
echo "123456" | passwd --stdin $user &> /dev/null
else
echo "$user is exists"
fi
done
3. for 문을 사용하여 네트워크 세그먼트 호스트에 대한 ping 작업을 실현하고 네트워크 세그먼트는 사용자가 입력합니다.
#!/bin/bash
while true
do
echo "1:ping"
echo "2:quit"
read -p "plese input you chosoe 1~2:" choose
case $choose in
1)
read -p "please input ip address:" host
ping -c 2 -w 2 $host &> /dev/null
if [ $? -eq 0 ];then
echo $host >> /tmp/host_up.txt
else
echo $host >> /tmp/host_down.txt
fi
;;
2)
exit 0
;;
*)
echo "input error"
esac
done
4. 호스트의 루트 비밀번호를 일괄 수정하고 비밀번호 수정의 성공 또는 실패를 기록하려면 for를 사용하십시오.
#!/bin/bash
read -p "请输入新密码:" pass
for i in 'cat /homework2/host.txt'
do
ssh $i "echo $pass | passwd --stdin root "
done