一些小习惯

1. 有时候,碰到了一个问题,以后就会避免这样的问题了。开始的时候运行程序,比如我要按天来跑数据。如果我想对结果要求比较急的时候,完全线性一天一天的跑,就会太慢。这个时候我们就可以把好几天的数据一起跑。一起跑又出现了一个问题,就是我们可能会产生中间数据,那好几天产生的中间数据可能是不一样的。所以这个时候,就涉及到如何对中间数据进行命名的问题。如果我们很多天的中间数据是一个名字,那么同时跑的时候,就会有问题。所以为了避免这种情况的发生,以后的生成中间数据的时候,名字最好不要是固定死的,比如和时间有关。

e.g.   file: test.sh  输入参数 起始日期  天数n (即处理从起始日期开始的n天的数据)

#!/bin/bash

if [ $# -lt 2 ]; then
    echo "Usage: $0 <start date> <day number>"
    exit 1;
fi

curDay=$1
dayNum=$2
i=0
while [ $i -lt $dayNum ]
do

#./getA  <输入文件> <输出文件>
   ./getA  $curDay.txt   tmp.txt  #tmp.txt 是间数据
#./output  <输入文件> <输出文件>
   ./output  tmp.txt final.txt

    curDay=`date -d "+1 day $curDay" +%Y%m%d`
    i=$(( $i+1 ))
done


上述脚本中 tmp.txt是中间数据,  所以我们最好以日期之类的命名,这样同时处理的时候比较方便。(当然不是绝对的,固定名字也是经常使用的)

2. 心态的问题

以前的时候,处理数据有结果就完事了,对于数据的合理性考虑的不多。相比而言现在进步了一些。

前2天跑数据,由于源数据有问题,为了替代源数据,只能拿别的数据跑。等跑完了,确实也有结果。照以前的时候,我肯定就认为没事了,这样就可以了。但是拿现在的结果和以前的结果做了一下对比,发现不在一个数量级上,少了好像10倍的数据,怎么回事呢?一步一步的找。感觉好险呢,如果不和以前数据做对比,估计我会给人家有问题的数据了。嗯,以后多分析分析,或者多考虑一下。就像我主管说的,别仅仅局限于程序,对于结果要分析一下,这样相当于是反证我程序到底对不对,使不合理。其实我们需要注意和学习的地方真的很多,慢慢养成好的习惯,以后会少出错的。

 

 

阅读更多
文章标签: date 脚本 file
个人分类: 工作小记
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭