📄 cm_file_0005.ksh
字号:
#!/bin/ksh#(@) 统一文件清理机制,清理上传的文件,注意,该功能不清理日志文件。# 本程序调用不需要参数# 载入 HPUX 实例定义的环境变量. $HOME/hpux/.setenv# 载入 OMS 系统为 HPUX 实例下传的环境信息. $HOME/hpux/config/ftp.cfg# 载入本任务定义的环境变量. $HOME/hpux/src/CM_FILE_0005/fun.cfg# 载入 公共函数部分。常用的函数定义在该文件中. $HOME/hpux/src/COMMON/common.kshcd $OUTPATHlogit INFO "${FUN_NAME}开始{"######################## 判断激活标志是否为1#######################checkActiveFlagif [[ $taskFlag = 1 ]] then logit WARN "${FUN_NAME}任务失效" logit INFO "${FUN_NAME}结束" exit 1elif [[ $agentFlag = 1 ]] then logit WARN "HPUX实例失效" logit INFO "${FUN_NAME}结束" exit 1elif [[ $agentFlag = 2 ]] then logit WARN "HPUX实例休眠" logit INFO "${FUN_NAME}结束" exit 1fiif [[ ! -s $CFGPATH/ftpcycle.cfg ]] then # 如果输入文件为空,采取什么动作 0 -- 报告错误返回1 -- 默认将全部数据取出,生成输出文件 # 根据本服务的实际情况,必须存在输入配置文件,因此 NULLDEFAULTFLAG = 0 NULLDEFAULTFLAG = 0 if [[ $NULLDEFAULTFLAG = 0 ]] then headline "000605" "配置文件 $CFGPATH/ftpcycle.cfg 不存在" logit "WARN" "配置文件 $CFGPATH/ftpcycle.cfg 不存在" logit INFO "${FUN_NAME}结束}" fputhead exit fifi# 根据定义的文件保存周期,将冗余的文件删除掉# $CFGPATH/ftpcycle.cfg 每个任务的输出文件保存周期列表while read -r trancode cycle restdo if [[ ${#trancode} = 0 ]] then continue fi head=`expr "$trancode" : '^\(.\)'`# logit DEBUG "head is $head" if [[ $head = "#" ]] then continue fi # 如果没有定义,则保存两个周期的数据 DEFAULTKEEPCYCLE=2 该环境变量定义在 .setenv 中 if [[ ${#cycle} = 0 || ${cycle} = 0 ]] then cycle=$DEFAULTKEEPCYCLE fi logit INFO "任务 $trancode 的保存周期为 $cycle" (( start = cycle + 1 )) # 得到文件保存最大周期之外的文件列表,进行删除处理 for i in `ls -1t *${trancode}*.gz 2>/dev/null | tail +${start}` do # 删除文件 $i logit INFO "删除文件 $i" # 测试时将此处显示 echo rm -f $i donedone < $CFGPATH/ftpcycle.cfglogit INFO "本次清理文件成功"# 构造本次任务的结果文件headline 000000 "本次文件清理成功"# 将本次任务的结果文件发送到 OMS 服务器echo fputheadfputheadlogit INFO "上传文件清理结束}"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -