周翔 发表于 2018-8-28 08:09:14

shell脚本:文本检查

  test148-aicboss%cat filecheck.sh
  #!/bin/bash
  #
  Date=`date +"%Y%m%d"`
  File="DAILYCONTRACT_$Date.891.CMCC"
  dir="/aiboss/crm/ngrm/upss/"
  if [ `cd $dir 2>/dev/null &&echo 'true'` ];then
  if[ -f "$File" ];then
  echo "文件已生成!"
  else
  echo "文件未生成!"
  exit 1
  fi
  else
  echo "目录不存在,请检查!"
  exit 2
  fi
  echo "#####开始检查文件名属性是否合格#####"
  F_line=`sed -n '1 s/\r//gp' $File`
  N_line=`cat $File|wc -l`
  if [ `echo "$F_line" |grep $Date`];then
  echo "#####首行日期与文件名一致#####"
  N_line=$(( $N_line - 1 ))
  if[ ${F_line##*0} -eq $N_line ];then
  echo "#####文件内容行数与文件头数值一致#####"
  else
  echo "#####文件内容行数与文件头数值不一致#####"
  exit 3
  fi
  else
  echo "#####首行日期与文件名不一致#####"
  exit 4
  fi
  echo "#####开始检查内容格式是否合格#####"
  fori in `seq $N_line`;do
  i=`expr $i + 1`
  if [`sed -n "${i}p" $File | grep -o '|' | wc -l` -eq 16 ];then
  echo"####第$i行格式合格####"
  else
  echo"####第$i行格式不合格####"
  exit5
  fi
  done
  echo "#####通过了所有检查项######"
  exit 0

页: [1]
查看完整版本: shell脚本:文本检查