没事干,写了个核查数据的脚本

根据此业务数据核查的一些共性,写了个脚本,安排组员使用这个脚本核查的时候就不必要说一大堆,简单,方便。记录下。

#!/bin/bash
E_BADARGS=67
if [[ $1 =~ [^0-9]+ ]]||[[ $1 -lt 1 ]]||[[ $1 -gt 14 ]]
then
echo "This \$1 parameters must be Interger(00-14).";exit $E_BADARGS
fi
if [[ $2 =~ [^0-9]+ ]]
then
echo "This \$2 parameters must be Interger.";exit $E_BADARGS
fi
if [ $# -ne 3 ]||[ "$2" -gt 365 ]||[ "$2" -lt 1 ]
then
echo "Usage: `basename $0` (01-14) date(1-365) kpi_id"
echo "example: `basename $0` 02 166 WAPHA02"
exit $E_BADARGS
fi
file_path=/opt/ultrapower/ultracollect/backup
hecha_dir=/opt/ultrapower/ultracollect/script/hecha
file_name=WAP-01-"$1"-"$2"-*
after_day=$2
let "after_day +=1"
cd $hecha_dir
find ./ -name "WAP-01*" -exec rm {} \;
cd $file_path
cp $file_name $hecha_dir
#cp WAP-01-01-"$after_day"-* $hecha_dir
cp WAP-01-"$1"-"$after_day"-00.xml $hecha_dir
cp WAP-01-"$1"-"$after_day"-01.xml $hecha_dir
cp WAP-01-"$1"-"$after_day"-02.xml $hecha_dir
cd $hecha_dir
rm WAP-01-"$1"-"$2"-00.xml
rm WAP-01-"$1"-"$2"-01.xml
rm WAP-01-"$1"-"$2"-02.xml
find ./ -name "*" -exec cat {} \;|egrep "$3"|awk -F\" '{print $3}'|awk -F\< '{print $1}'|awk -F\> '{print $2}'>$hecha_dir/../hecha.t
xt

这里列出几个知识点
1.在版本 2.02 的Bash 中,推出了一个新的[[...]]扩展test 命令.因为这种表现形式可能对某些语
言的程序员来说更加熟悉.注意"[["是一个关键字,并不是一个命令.
2.=~ 表示后面要使用正则表达式
这里需要$1为数字, 使用[^0-9]+,也即是参数中匹配非数字,那么就符合条件,这就一定是数字了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值