shell习题-22
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,题目要求写一个shell脚本,通过curl -I 返回的状态码来判定所访问的网站是否正常。比如,当状态码为200时,才算正常。参考答案#!/bin/bash#这个脚本用来判断一个网址是否正常#作者:猿
千家信息网最后更新 2025年02月01日shell习题-22
题目要求
写一个shell脚本,通过curl -I 返回的状态码来判定所访问的网站是否正常。
比如,当状态码为200时,才算正常。
参考答案
#!/bin/bash#这个脚本用来判断一个网址是否正常#作者:猿课-阿铭 www.apelearn.com#日期:2018-11-01url="http://www.apelearn.com/index.php"mail_user=306798658@qq.comcode=`curl -I $url 2>/tmp/curl.err|head -1|awk '{print $2}'`if [ -z "$code" ]then python mail.py $mail_user "$url访问异常" "`cat /tmp/curl.err`" exitelif [ $code != "200" ]then curl -I $url &> /tmp/curl.log python mail.py $mail_user "$url访问异常 状态码$code" "`/tmp/curl.log`" fi
题目要求
将用户家目录(考虑到执行脚本的用户可能是普通用户也可能是root)下面小于5KB的文件打包成tar.gz的压缩包,并以当前日期为文件名前缀,例如,2018-03-15.tar.gz。
参考答案
查看tar压缩包里面的文件 tar -tf tar.gz
#!/bin/bash#这个脚本用来打包用户家目录下小于5k的文件#作者:猿课-阿铭 www.apelearn.com#日期:2018-11-01t=`date +%F`cd $HOMEtar czf $t.tar.gz `find ./ -type f -size -5k|xargs`
题目要求
一个同学不小心用iptables规则把sshd端口22给封掉了,结果不能远程登陆,要想解决这问题,还要去机房,登录真机去删除这规则。 问题来了,要写个监控脚本,监控iptables规则是否封掉了22端口,如果封掉了,给打开。 写好脚本,放到任务计划里,每分钟执行一次。
参考答案
#!/bin/bash#这个脚本用来解封22端口#作者:猿课-阿铭 www.apelearn.com#日期:2018-11-01iptables -nvL INPUT --line-numbers |grep -w 'dpt:22' |awk '$4 ~/REJECT|DROP/ {print $1}' > /tmp/iptables.logn=`wc -l /tmp/iptables.log`if [ $n -gt 0 ]then for n in `tac /tmp/iptables.log` do iptables -D INPUT $n donefi
题目要求
已知nginx访问的日志文件在/usr/local/nginx/logs/access.log内,请统计下早上10点到12点 来访ip最多的是哪个?
参考日志
111.199.186.68 - [15/Sep/2017:09:58:37 +0800] "//plugin.php?id=security:job" 200 "POST //plugin.php?id=security:job HTTP/1.1″"http://a.lishiming.net/forum.php?mod=viewthread&tid=11338&extra=page%3D1%26filter%3Dauthor%26orderby%3Ddateline" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3141.7 Safari/537.36"203.208.60.208 - [15/Sep/2017:09:58:46 +0800] "/misc.php?mod=patch&action=ipnotice&_r=0.05560809863330207&inajax=1&ajaxtarget=ip_notice" 200 "GET /misc.php?mod=patch&action=ipnotice&_r=0.05560809863330207&inajax=1&ajaxtarget=ip_notice HTTP/1.1″"http://a.lishiming.net/forum.php?mod=forumdisplay&fid=65&filter=author&orderby=dateline" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3141.7 Safari/537.36"
参考答案
#!/bin/bash#这个脚本用来分析Nginx访问日志#作者:猿课-阿铭 www.apelearn.com#日期:2018-11-01//定义语音为英文export LANG=enlog="/usr/local/nginx/logs/access.log"#时间的定义 1[01]:[0-5][0-9]: t=`date +%d/%b/%Y:1[01]:[0-5][0-9]:`egrep "$t" $log|awk '{print $1}' |sort -n |uniq -c |sort -n |tail -1 |awk '{print $2}'
题目要求
写一个shell脚本。提示输入一个暂停的数字,然后从1打印到该数字。然后询问是否继续。继续的话再输入一个数字接着打印,否则退出脚本。
例:如果输入的是5,打印1 2 3 4 5,然后继续输入15,然后打印6 7 …14 15 以此类推。
参考答案
#!/bin/bash#这个脚本用来打印数字#作者:猿课-阿铭 www.apelearn.com#日期:2018-11-01#输入一个数字read -p "Please input a number: " n#排除纯数字n1=`echo $n |sed 's/[0-9]//g'`if [ -n "$n1" ]then echo "Please input a number." exitfifor i in `seq 1 $n`do echo $idone#是否继续打印read -p "If continue? y/n" ccase $c in n|N) exit ;; y|Y) #第二次输入数字 read -p "Please input a number: " n2 #判断是否是纯数字 n3=`echo $n2|sed 's/[0-9]//g'` if [ -n "$n3" ] then echo "Please input a number." exit fi #判断第二个数字是否大于第一个数字 if [ $n2 -le $n ] then echo "$n2 should grater than $n." exit fi for i in `seq $[$n+1] $n2` do echo $i done ;; *) echo "Please input y or n." ;;esac
脚本
数字
日期
参考
输入
作者
文件
答案
题目
用户
日志
状态
端口
规则
目录
问题
监控
普通
以此类推
任务
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
台州传媒网络技术有限公司
一可米互联网科技公司
建平软件开发技术
温州软件开发专业公司
mysql数据库cpu升高
宁晋县网络安全和信息化
数据库pemporary
钉钉访问数据库
丹阳网络安全
计算机网络技术需考什么证
参数化软件开发
老河口dell服务器
前后台数据库数据是怎么连接的
运维 服务器管理
通铭软件开发
税务对软件开发服务的政策
时间序列数据数据库
网络技术研发高校专项
计算机3级网络技术视频
中兴通讯数据南京软件开发一部
山东人工智能农业信息系统数据库
100个模组的服务器
网络技术数据可分为
浏览网页腾讯网络安全宣传周
epyc服务器哪个好
中职生网络技术知识点
快捷软件开发
网络安全的五大层次
画网络安全小报
软件开发本科毕业论文