shell cat 命令的 不靠谱使用,导致hive 表中的小时数据,每隔几天就会缺失一个小时的

现象:hive 表中的小时数据,每隔几天就会缺失一个小时的,最后发现时在做数据聚合cat的时候,失败,导致:

修改脚本,做下面的方案,解决了:

##merge 5min data into hour data                                                                                                                        cat $datapath/news_5min_$xhour* >  $localpath/data/channelnews_$hour.txt                                                     #####check                                                                                                                                                     tmppath="${localpath}/data/channelnews_${hour}.txt"                                                                                       i=0                                                                                                                                                                      while (( $i < 10))                                                                                                                                                   do                                                                                                                                                                           m=`du -b $path | awk ‘{print int($1)}‘`                                                                                                                  if [ $m -lt 1024 ];                                                                                                                                                   then                                                                                                                                                                           echo "${path}  is small ,is $m"                                                                                                                                 sleep 5;                                                                                                                                                               else                                                                                                                                                                            break                                                                                                                                                             fi                                                                                                                                                                                 let "i++"                                                                                                                                              done                                                                                                                                                                      echo "i is:$i"

时间: 2024-10-03 14:14:45

shell cat 命令的 不靠谱使用,导致hive 表中的小时数据,每隔几天就会缺失一个小时的的相关文章

linux shell cat 命令

cat:查看文件的内容.连接文件.创建一个或多个文件和重定向输出到终端或文件  用法:cat [选项] [文件] 1. $ cat hello.txt 显示hello.txt文本文件中的内容 2. $ cat -n file -n选项,可以显示文件的内容和行号 3. $ cat -b file -b选项,与-n类似,但只标识非空白行的行号(空白行仍显示) 4. $ cat -e file -e选项,将在每一行的末尾显示"$"字符,在需要将多行内容转换成一行时非常有用. 5. $ cat

shell之命令代换,将当前路径存放在变量中,然后使用变量

重要的 命令代换`` 反引号 shell先执行该命令,然后将命令的结果存放在 变量中 例如 var=`pwd` echo $var 也可以用其$()替换 var=$(date) echo $var 删除该变量 unset 加变量名 原文地址:https://www.cnblogs.com/xiaokang01/p/9656744.html

Python培训机构到底靠不靠谱

近几年Python开发工程师一直是市场的人才稀缺,Python语言简单易学,就业前景广这么多标签集中在门行业上自然也引起了年轻人的注意.现在学习Python的途径有很多,通过培训机构学习Python进入Python行业也是大有人在,但是Python培训到底靠不靠谱呢?我相信这是每个想进入Python学习者的心声,那么一个合格的Python培训机构是什么样子的呢,我们又究竟是不是和学习Python语言呢. 一.选择好的培训机构地理位置很重要 就拿北京来说,哪个培训机构不愿意让自己落脚在这里,这是国

cat命令和EOF标识输出shell到文件

在某些场合,可能我们需要在脚本中生成一个临时文件,然后把该文件作为最终文件放入目录中.(可参考ntop.spec文件)这样有几个好处,其中之一就是临时文件不是唯一的,可以通过变量赋值,也可根据不同的判断生成不同的最终文件等等.一.cat和EOFcat命令是linux下的一个文本输出命令,通常是用于观看某个文件的内容的:EOF是“end of file”,表示文本结束符.结合这两个标识,即可避免使用多行echo命令的方式,并实现多行输出的结果.二.使用看例子是最快的熟悉方法: # cat <<

shell基础--cat命令的使用

一.cat的常用用法 1.总结 2.实验 (1).非交互式编辑 [[email protected]~_~ day5]# cat > cattest.sh <<STOP > hello > STOP [[email protected]~_~ day5]# cat cattest.sh hello [[email protected]~_~ day5]# cat > cattest.sh << EOF hello cat with EOF EOF [[ema

Shell 常用命令

Shell 常用命令 这篇博客记录了一些 Shell 常用命令 供未来查阅. 添加ll 为了简化 "ls -l",可以在~/.bash_profile中加入: 1 2 alias ll='ls -l' 获得参数 $0是命令本身$1是第一个参数 $ $可以认为是 获取内容 . 内置变量 bash有很多内置变量,我们可以使用$获取到它们,例如: 1 2 3 4 5 $PWD $HOME $PATH $(pwd) 读取配置 配置数据可以像下面一样: 1 2 3 4 Fansy:UtilToo

linux cat命令使用方法详解--把档案串连接后传到基本输出

linux cat命令使用方法详解--把档案串连接后传到基本输出 日期:2011-12-05 点击:2324 来源: 未知 分享至: 使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName说明:把档案串连接后传到基本输出(萤幕或加 > fileName 到另一个档案)参数:-n 或 --number 由 1 开始对所有输出的行数编号-b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号-s 或 --squeeze-b

linux shell 管道命令(pipe)使用及与shell重定向区别

linux shell 管道命令(pipe)使用及与shell重定向区别 看了前面一节:linux shell数据重定向(输入重定向与输出重定向)详细分析 估计还有一些朋友是头晕晕的,好复杂的重定向了.这次我们看下管道命令了.shell管道,可以说用法就简单多了. 管道命令操作符是:"|",它仅能处理经由前面一个指令传出的正确输出信息,也就是 standard output 的信息,对于 stdandard error 信息没有直接处理能力.然后,传递给下一个命令,作为标准的输入 st

Shell 常用命令总结

Shell常用命令总结 1  ls命令:列出文件 ls -la 列出当前目录下的所有文件和文件夹 ls a* 列出当前目录下所有以a字母开头的文件 ls -l *.txt 列出当前目录下所有后缀名为txt的文件 2  cp命令:复制  cp a.txt b.txt : 把文件a的内容复制到b文件 cp a.txt ./test : 把文件a复制到text目录下 cp -a test test2:递归的把目录test下所有文件(包括隐藏的文件)复制到新的目录 test2 3  cat命令:查看 组