shell脚本入门(4)

1.计算12345经过加减乘除等于15的式子

#!/bin/bash
for a in  + - \* /
do
         for b in + - \* /
                do
                for c in + - \* /
                do
                         for d in + - \* /
                         do
                        zhi=$[1${a}2${b}3${c}4${d}5]
                        [ 15 -eq $zhi ] && echo  "1,2,3,4,5经过运算后为15的表达式为:1${a}2${b}3${c}4${d}5"
                        done
                done
         done
done

2.打印9x9乘法表如下格式

#!/bin/bash
#计算九九乘法表

for i in  `seq 9`
do
         for j in `seq 9`
         do
                [ $j -le $i ] &&  echo  -n  "$i*$j=$[i*j] "
         done
         echo "  "
done

或者

[root@gaojingbo shell]# awk 'BEGIN{for(i=1;i<=9;i++){for(j=1;j<=i;j++){printf i"x"j"="i*j " "}print ""}}'
1x1=1 
2x1=2 2x2=4 
3x1=3 3x2=6 3x3=9 
4x1=4 4x2=8 4x3=12 4x4=16 
5x1=5 5x2=10 5x3=15 5x4=20 5x5=25 
6x1=6 6x2=12 6x3=18 6x4=24 6x5=30 6x6=36 
7x1=7 7x2=14 7x3=21 7x4=28 7x5=35 7x6=42 7x7=49 
8x1=8 8x2=16 8x3=24 8x4=32 8x5=40 8x6=48 8x7=56 8x8=64 
9x1=9 9x2=18 9x3=27 9x4=36 9x5=45 9x6=54 9x7=63 9x8=72 9x9=81 

3.添加user1-user50个用户.再添加过程中.如果这50个用户中有已存在的用户则显示The user is in
system!!!!!如果不存在则添加,并且添加密码 能不能让上边的脚本加快执行速度?

#!/bin/bash

for i in `seq -w 50`
do
        {
        if id user$1 $> /dev/null
        then
                echo "The user is in system!!!!1"
        else
                useradd user$i
                echo redhat | passwd  user$i --stdin
        fi}&
done

4.写一个脚本监控你的/分区,当你的/分区的剩余空间小于10G时.给root管理员发一封邮件,结合计划任
务,每5min检查一次

5.写一个脚本,使用case语句,实现sshd进程的启动,停止和重启

#!/bin/bash
while :
do
cat <<EOF
        1.启动sshd
        2.停止sshd
        3.重启sshd
        q.按q退出
EOF
read -p "请输入一个数:" i
case $i in
1)
        systemctl start sshd && echo "####################启动sshd";;
2)
        systemctl stop sshdecho "####################启动sshd" ;;
3)
        systemctl restart sshdecho "####################启动sshd" ;;
q)
    exit;;
*)
        echo "##################请输入一个[1-3]的数:"

esac
done

猜你喜欢

转载自blog.csdn.net/qq_42989565/article/details/82224841