Shell Chapter 5 作业

1.使用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.使用for创建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实现批量主机root密码的修改,记录修改密码的成功或失败记录

#!/bin/bash
read -p "请输入新密码:" pass
for i in 'cat /homework2/host.txt'
do
        ssh $i "echo $pass | passwd --stdin root "
done

猜你喜欢

转载自blog.csdn.net/AChain1117/article/details/125900406