需求:每日hadoop结果文件中,找出数据不完整的日期和没有跑出数据的日期,重新进行跑hadoop任务

  1. 分析:在result/目录生成的文件中数据有2个特点
    1. 第一:日期有,但是数据不完整
    2. 第二:日期对应的文件不存在(文件缺失)
#/bin/sh
# 第一步:先打开结果文件目录(result),将目录的文件存在一个列表中
time_list=()
i=0
dir=`cd ~/result/`
for i in $dir
do
echo $i
time_list[$i]=$i
i=$(($i+1))
done
# 构建要查询的时间段
date=20170101
end_date=20170111 # 注意在这里是前包,后不包
while [[ $date -lt $end_date ]]
do
echo "$date".txt
# 第二步:判断构建文件是否存在与结果文件的列表中,如果存在,就检查数据量是否位数是否大于9位(单位:bytes)
if [[ "$time_list" =~ "$date".txt ]];then
# 计算每个文件的数据量的大小
data_num=`du -b $i* | awk '{sum += $1}; END{print sum}'` # 把查询文件量大小的命令赋值给date_num
echo "command(du -b $i* | awk '{sum += $1}; END{print sum}') results are: $data_num" # 执行查询命令,并把结果赋值给data_num变量
echo $data_num
# echo ${#data_num}
if [ ${#data_num} -lt 3 ];then # 判断参选出的数据的位数
`touch ~/result/${date}.txt`
fi
else
`touch ~/result/${date}.txt`
fi
date=$(($date+1)) done

小结:当然这个也是调试的时候用的,不过真正,你要根据自己的需求去做,这时,忽然在我的脑子里出现了一个demo侠的名称,因为之前,我看了一篇我们公司内部的写的文章,学习分为几个阶段吧,因为我之前也没有写过shell,所以在写这个需求的时候,起哦也查了很多的资料,发现他们写的都差不多,和我之前写的博客差不多,没有什么干货,都是点演示,俗称demo侠。就是对一个知识点你可能看一遍,演示一遍,觉得知道他是什么意思了,但是真正项目需求用的时候,你就会发现,你是不理解的。所以我在这种情况下,又重新学习了一下,忽然感觉对原来的知识点又了不一样的理解,这时我想起了一篇文章,深度学习分为这么几个阶段:demo侠——>调参侠——>懂原理侠——>懂原理+修改模型细节侠——>超大数据操控侠——>模型/框架架构师,入门级别是懂原理侠。所以学习好事要多思考,结合实际情况去解决问题,去学习,这样的途径是你对知识点掌握最牢靠的,也是理解最透彻的。

监控hadoop任务结果shell脚本的更多相关文章

  1. tomcat监控,自动重启shell脚本

    tomcat监控,自动重启shell脚本如下,取名 monitor_tomcat.sh: #!/bin/sh # func:自动监控tomcat脚本并且执行重启操作 # 获取tomcat进程ID(其中 ...

  2. 监控Nginx服务的Shell脚本

    Nginx 虽然处理并发量比 apache 确实要强点,但它这种 php-cgi 模式不是太稳定,这点网上也有朋友总结了,我在实现项目中也感受到了. 我们一台支付机,偶尔会出现以下情况的:php-cg ...

  3. Hadoop(四)shell脚本定时采集日志数据到hdfs

    #!/bin/bash #set java envexport JAVA_HOME=/wocloud/java/jdk1.7.0_45export JRE_HOME=${JAVA_HOME}/jree ...

  4. zabbix中监控某个进程的shell脚本

    #!/bin/sh ret_ok= ret_warn= ret_critical= ret_unknown= info_count=`ps -aux | awk 'BEGIN {cnt=0} /[^- ...

  5. Linux系统下实时监控网口速率的shell脚本

    修改后的脚本文件 #!/bin/bash #Modified by lifei4@datangmobile.cn echo ===DTmobile NetSpeedMonitor=== sleep 1 ...

  6. 基于nc命令监控服务端口的Shell脚本

    Shell代码: #!/bin/bash export LANG=en_US.UTF- #IP Address=127.0.0.1 #Port Port= #尝试的次数 n= #nc timeout, ...

  7. Linux/Unix shell 脚本监控磁盘可用空间

    Linux下监控磁盘的空闲空间的shell脚本,对于系统管理员或DBA来说,必不可少.下面是给出的一个监控磁盘空间空间shell脚本的样本,供大家参考. 1.监控磁盘的空闲空间shell脚本 robi ...

  8. 8个DBA最常用的监控Oracle数据库的常用shell脚本

    本文介绍了8个常用的监控数据shell脚本.首先回顾了一些DBA常用的Unix命令,以及解释了如何通过Unix Cron来定时执行DBA脚本.网上也有好多类似的文章,但基本上都不能正常运行,花点时间重 ...

  9. 监控Linux服务器网站状态的SHELL脚本

    1,监控httpd状态码的shell脚本代码. #!/bin/sh #site: www.jquerycn.cn # website[0]=www.jquerycn.cn/chuzu/' #网站1 m ...

随机推荐

  1. [Codeforces Round #170 Div. 1] 277A Learning Languages

    A. Learning Languages time limit per test:2 seconds memory limit per test:256 megabytes input standa ...

  2. 【NOIP2016练习】T3 subset (分块,状压DP)

    3 subset 3.1 题目  述 一开始你有一个空集,集合可以出现重复元素,然后有 Q 个操作 add s 在集合中加入数字 s. del s 在集合中删除数字 s.保证 s 存在 cnt s 查 ...

  3. 【CF559C】 Gerald and Giant Chess(计数,方案数DP,数论)

    题意:给出一个棋盘为h*w,现在要从(1,1)到(h,w),其中有n个黑点不能走,问有多少种可能从左上到右下 (1 ≤ h, w ≤ 105, 1 ≤ n ≤ 2000),答案模10^9+7 思路:从 ...

  4. HRBUST 2072:萌萌哒十五酱的礼物~(树,字典树)

    题意:n个点的一棵树,树的边上有权值.一条路径的权值定义成这条路径上所有边的权值的xor.问所有路径的最大权值是多少. 思路: 首先,树上任意两点之间的路可以表示成 这两点到根节点的路- 其最近公共祖 ...

  5. AC日记——Destroying The Graph poj 2125

    Destroying The Graph Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 8356   Accepted: 2 ...

  6. Codeforces 932 B.Recursive Queries-前缀和 (ICM Technex 2018 and Codeforces Round #463 (Div. 1 + Div. 2, combined))

    B. Recursive Queries   time limit per test 2 seconds memory limit per test 256 megabytes input stand ...

  7. 洛谷——P2296 寻找道路

    P2296 寻找道路 题目描述 在有向图G 中,每条边的长度均为1 ,现给定起点和终点,请你在图中找一条从起点到终点的路径,该路径满足以下条件: 1 .路径上的所有点的出边所指向的点都直接或间接与终点 ...

  8. 一些yuv视频下载地址

    因为测试需要下载一些yuv视频地址,现存一个可以下载yuv视频的地址以备后用 http://trace.eas.asu.edu/yuv/index.html ftp://ftp.ldv.e-techn ...

  9. LightOj 1215 Finding LCM

    Discription LCM is an abbreviation used for Least Common Multiple in Mathematics. We say LCM (a, b, ...

  10. FastDFS 使用经验分享

    原文:http://www.ttlsa.com/fastdfs/fastdfs-experience-sharing/ 应用背景 文件被上传到FastDFS后Storage服务端将返回的文件索引(FI ...