Shell 练习题 21—30,内附答案

21、计算a.txt中每行中出现的数字个数并计算一下整个文档中一共出现了几个数字。例如内容如下:
12aa*lkjskdj
alskdflkskdjflkjj
22、写一个shell脚本,先判断一下你linux的版本和bash版本,然后看看是否需要升级,若是升级,则使用yum直接升级,否则输出一条日志,告之不需要升级。参考信息:我们要保证对应版本的CentOS里的bash版本不低于以下版本。假设我们只判断centos5和centos6两种系统。
- Red Hat Enterprise Linux 7 - bash-4.2.45-5.el7_0.2
- Red Hat Enterprise Linux 6 - bash-4.1.2-15.el6_5.1
- Red Hat Enterprise Linux 5 - bash-3.2-33.el5.1
23、写一个脚本,检测你的网络流量,并记录到一个日志里。需要按照如下格式,并且一分钟统计一次:
2014-09-29 10:11
eth0 input: 1000bps
eth0 output : 200000bps
################
2014-09-29 10:12
eth0 input: 1000bps
eth0 output : 200000bps
24、统计当前通过 80 端口建立连接的进程数量
25、统计当前有多少ip 访问量,包括tcp和udp 协议
26、系统负载很高,通过top以及 ps 查看,是因为cron计划任务在运行一个 cleanmem.sh 的脚本,导致很多 sh 命令在运行,写个脚本,杀死所有的 sh 命令。
27、写脚本,判断Linux服务器是否开启了 web 服务,如果开启了,判断跑的是什么服务,httpd? 还是 nginx?或者其他的服务。
28、加入服务器上跑的是 httpd,写个脚本,每分钟检测一次 httpd 服务是否存在,如果不存在,就启动它。
29、创建一个带删除和添加选项的用户的脚本
- 只支持三个选项 ‘--del’ ‘--add’ --help输入其他选项报错。
- 使用‘--add’需要验证用户名是否存在,存在则反馈存在。且不添加。 不存在则创建该用户,切添加与该用户名相同的密码。并且反馈。
- 使用‘--del’ 需要验证用户名是否存在,存在则删除用户及其家目录。不存在则反馈该用户不存在。
- --help 选项反馈出使用方法
- 支持以,分隔   一次删除多个或者添加多个用户。
- 能用echo $?  检测脚本执行情况  成功删除或者添加为0,报错信息为其他数字。
- 能以,分割。一次性添加或者 删除多个用户。  例如 adddel.sh --add user1,user2,user3.......
- 不允许存在明显bug。

30、计算 100 以内能被 3 整除的数的总和。





21、答案
#!/bin/bash
sum=0
for fline in `cat $1`
do
    i=`echo -n $fline |sed 's/[^0-9]//g'| wc -m`
    echo $i
    sum=$[$sum+$i]
done
echo 'sum:'$sum
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值