• 幕客老师召集小伙伴
  • 运维高手36项修炼
  • python自动化运维项目实战
  • nginx从入门到实战
  • 阿里云与Centos7实战

Shell-进程锁,相关练习案例

一、进程锁

     进程锁作用:

     目的:避免脚本重复执行。

if [ -f ${workdir}/upflv.lock ]; then
exit;
fi
touch ${workdir}/upflv.lock
for filemd5 in `ls ${workdir}/*.tv 2>&-`; do
    ….
done 
rm ${workdir}/upflv.lock

二、Shell案例
========================================================

1. 求出每个学生的平均成绩
# cat cj.txt 
alice shuxue 80
jack  shuxue 90
alice yuwen 90
jack  yuwen 70

# awk ‘{cj[$1]=cj[$1]+$3} END{for(i in cj){print i,cj[i]/2}}’ cj.txt 
jack 80
alice 85

# awk ‘{cj[$1]+=$3} END{for(i in cj){print i,cj[i]/2}}’ cj.txt 
jack 80
alice 85

2. 监控网卡的流量
预备知识:
/sys/class/net/eth0/statistics/rx_packets 收到的数据包数量
/sys/class/net/eth0/statistics/tx_packets 发送的数据包数量
/sys/class/net/eth0/statistics/rx_bytes 收接的字节数
/sys/class/net/eth0/statistics/tx_bytes 发送的字节数

测量指定网卡每秒数据包(包括接收和发送)
测量指定网卡带宽(包括接收和发送)

3. 使用循环计算20的阶乘

4. 使用循环和continue关键字,打印出100以内能被4整除的数

5. 网站PV,UV统计
预备知识:
PV(网站浏览量): 即Page View,即页面浏览量或点击量,用户每次刷新即被计算一次
UV(独立访客数): 即Unique Visitor,指一天内访问站点的人数,1天内同一访客只计为一个UV

grep ’07/Aug/2012′ access.log |awk ‘{print $1}’ |sort |uniq -c |awk ‘BEGIN{print “IP\t\t\t访问次数\n————————————“}{printf “%-25s” “%-10s\n”, $2,$1; pv=pv+$1} END{print “————————————“; print “今天的pv数为: “pv; print “今天的uv数为: “NR}’

netstat -an |grep :80 |awk -F”ffff:” ‘{print $3}’ |awk -F”:” ‘{print $1}’ |sort |uniq -c |awk ‘{pv+=$1} END{print pv,NR}’ 
19978 17

6. 阻止访问量超过50的IP
deny_ip.sh

7. 自动部署LNMP环境
========================================================

Shell-进程锁,相关练习案例

Pingbacks已打开。

引用地址

暂无评论

发表评论