shell脚本——日常练手
发布时间:2020-12-15 21:34:00 所属栏目:安全 来源:网络整理
导读:1、猜数小游戏 关键点:命令写法 1、 $RANDOM 的使用格式 2、反引号 用于 执行命令 3、let 整数 自加1的用法 4、引用局部变量, ${ } 格式 5、elif 后面也要跟 ;then #!/bin/ bash# *************猜数游戏************* i = 0 #记录猜数次数num2 =` echo $RA
1、猜数小游戏关键点:命令写法 1、$RANDOM 的使用格式 2、反引号 用于执行命令 3、let 整数自加1的用法 4、引用局部变量,${ }格式 5、elif 后面也要跟 ;then #!/bin/bash #*************猜数游戏************* i=0 #记录猜数次数 num2=`echo $RANDOM | cut -c 1-2` #目标数指定随机值 while true #死循环 do read -p "请输入两位整数:" num1 #输入竞猜初始值 if [ ${num1} -gt ${num2} ];then #如果猜的比目标数大 echo "比 ${num1} 小" #提示输入值偏大 let i++ #猜错次数加1 elif [ ${num1} -lt ${num2} ];then #如果猜的比目标数小 echo "比 ${num1} 大" #提示输入值偏小 let i++ #猜错次数加1 else echo "猜对了:就是 ${num2} " #输出猜对的结果 echo "一共猜错了 ${i} 次 " #输出猜错次数 break #跳出循环 fi done ? 2、局域网检查上线ip并保存在线ip关键点:美观度调整方法 1、调用内部文件方法?.[空格]?? 2、echo -n 不空行输出 3、"黑洞文件" /dev/null 该目录存放条件判断结果,不会呈现给用户,使输出简洁 4、使用 nohup bash ping_ip.sh & 屏蔽ping的过程 ("&"指在后台运行 "nohup"指关闭终端仍继续运行) 可使用 ps aux | grep "ping_ip.sh"? 过滤出来后,使用kill -9 终止 #!/bin/bash #*********************检测同网段中ip********************** . /etc/init.d/functions #调用内部文件 ip=192.168.9. #指定网段 for i in `seq 1 255` #截取从1~255的ip do if ping -c 1 -w 1 ${ip}${i} &>/dev/null ;then #ping ip反馈信息写入黑洞文件 echo -n "${ip}${i}" #打印ip success #使用functions函数,美观展示 echo "" echo "${ip}${i}">>/root/bash/ping_ip.txt #将在线ip输出至文档 #echo "${ip}${i} 在线" else echo -n "${ip}${i}" #打印ip failure #使用functions函数,美观展示 echo "" #echo "${ip}${i} 不在线" fi done ? ? ?3、打印九九乘法表关键点:嵌套 1、注意嵌套缩进 #!/bin/bash #**********************九九乘法表***************** for i in `seq 1 9` #取数字1~9 do for j in `seq ${i} 9` #取数字从i~9 do echo -n " ${i} * ${j} = $((i*j)) " #相乘不换行 done echo -e "n" #第一个因数改变后换行 done ? ? ? ?4、批量创建用户并设置8位加密密码,可登陆关键点: 1、加密方法——key=`echo $RANDOM | md5sum | cut -c 1-8` 2、账号密码匹配——echo "${key} | passwd --stdin user${i}" #!/bin/bash #********************批量创建用户并设置随机登录密码******************* for i in `seq 1 100` #取数1~100 do useradd user${i} #批量建立用户user1~user100 key=`echo $RANDOM|md5sum|cut -c 1-8` #制作加密密码 echo ${key}|passwd --stdin user${i} #账号密码匹配 echo -e "账号:user${i} n密码:${key}" >> /root/bash/passwd_100.txt #将生成的账户密码写入文件保存 done 5、重启服务关键点: 1、shell变量 $? 可以反馈上一步命令执行状况 #!/bin/bash systemctl restart network #重启网卡 if [ "$?" == 0 ];then #判断前一步是否执行成功 echo "成功重启" else echo "失败" fi (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |