大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本篇内容介绍了“怎么用Shell脚本监控rsync数据是否传输完”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
创新互联服务项目包括南宫网站建设、南宫网站制作、南宫网页制作以及南宫网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,南宫网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到南宫省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!今天有台服务器a要把网站程序全部传输到另外一台服务器b上去,但离下班时间就只有1个小时了,为了准时下班,简单写了个shell脚本来监控是否有传输完,我先在服务器a上看了下网站程序总大小为12G,用du -sm查看也就是11517,服务器也不会有人再传东西上去了,所以我可以放心容量不会再变大了。
系统:centos 5.x
需要的软件:rsync
脚本内容:
代码如下:
#!/bin/bash file=`du -sm /var/www/vhosts/|awk '{print $1}'` ps=`ps -C rsync --no-header|wc -l` if [ "$file" = "11517" ];then echo "files downloaded!" else if [ "$ps" = "1" ];then kill -9 $(ps aux | grep rsync |grep -v grep| awk '{print $2}') sleep 1 nohup sh /root/rsync.sh & else echo "rsync is running..." fi fi
脚本的大概思路就是查看文件夹的大小是否有跟服务器a的大小一样,如果不一样就检查rsync的进程是否有在运行,如果没有运行就kill掉,然后重新执行rsync的下载脚本.
ps:当然这个脚本有点简陋,没有去检测进程状态,如果出现僵尸进程的话,是没有办法处理的.当然我这里就不再修改了,大家可以自己去修改.
“怎么用Shell脚本监控rsync数据是否传输完”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!