shell编程100例 第三周五题

1,点名器脚本

#!/bin/bash# 编写一个点名器脚本
#要提前准备一个 user.txt 文件
#文件中需要包含所有姓名的信息,一行一个姓名,脚本回随机显示一个姓名
while :
do
line=cat user.txt |wc ‐l
num= [ R A N D O M s e d − n " [RANDOM%line+1] sed -n " [RANDOMsedn"{num}p" user.txt
sleep 0.2
clear
done
#统计 user 文件中有多少用户

2,对 100 以内的所有正整数相加求和(1+2+3+4…+100)

#!/bin/bash
sum=0
for i in seq 100
#seq 100 可以快速自动生成 100 个整数
do
sum= [ s u m + i ] d o n e e c h o " 总 和 是 : [sum+i] done echo "总和是: [sum+i]doneecho":sum"

3,统计 13:30 到 14:30 所有访问 apache 服务器的请求有多少个

#!/bin/bash
#awk 使用‐F 选项指定文件内容的分隔符是/或者:
#条件判断$7:$8 大于等于 13:30,并且要求,$7:$8 小于等于 14:30
#最后使用 wc ‐l 统计这样的数据有多少行,即多少个
awk -F “[ /:]” ‘$7":"$8>=“13:30” && $7":"$8<=“14:30”’ /var/log/httpd/access_log |wc -l

4,统计 13:30 到 14:30 所有访问本机 Aapche 服务器的远程 IP 地址是什么

#!/bin/bash

#日志文档内容里面,第 1 列是远程主机的 IP 地址,使用 awk 单独显示第 1 列即可
awk -F “[ /:]” ‘$7":"$8>=“13:30” && $7":"$8<=“14:30”{print $1}’ /var/log/httpd/access_log

5,统计每个远程 IP 访问了本机 apache 几次?

#!/bin/bash
awk ‘{ip[$1]++}END{for(i in ip){print ip[i],i}}’ /var/log/httpd/access_log

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值