📄 wk_cpu_1022.ksh
字号:
# 本程序调用不需要参数# 载入 HPUX 实例定义的环境变量. $HOME/hpux/.setenv# 载入 OMS 系统为 HPUX 实例下传的环境信息. $HOME/hpux/config/ftp.cfg# 载入本任务定义的环境变量. $HOME/hpux/src/WK_CPU_1022/fun.cfg# 载入 公共函数部分。常用的函数定义在该文件中. $HOME/hpux/src/COMMON/common.ksh# 切换到文件上传路径cd $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 1 fi# 判断对 /usr/sbin/cstm 是否有执行权限if [[ ! -x /usr/sbin/cstm ]] then logit "INFO" "对 /usr/sbin/cstm 没有执行权限 " # 够造标题行 headline "000073" "对 /usr/sbin/cstm 没有执行权限 " # 发送标题行 fputhead exit 1fi# 生成数据分析文件,然后再对该文件进行查找处理echo 'selall;info;wait;infolog;view;done' | /usr/sbin/cstm > $TMPPATH/1022.tmpbackcode=`echo $?`if (test ${backcode} -ne "0") then headline 000074 "采集主机主机CPU状态信息失败" fputhead exit 1fi# 过滤数据,只留下CPU状态行cat $TMPPATH/1022.tmp | grep ^state > $TMPPATH/1022a.tmpcpunumber=`ioscan -fknC processor | tail +3 | wc -l`# 提取CPU状态信息i=1while [ $i -le $cpunumber ] do a=`expr $i + 1` cat $TMPPATH/1022a.tmp | awk -F "\|" '{ print $'$a' }' | sed 's/ //' | read hostCPUState[i] i=`expr $i + 1`donei=1# 将值传递给数组变量while [ $i -le $cpunumber ] do cat $TMPPATH/1022.tmp | grep "Information Tool Log for CPU on path" | sed 's/\(.*\) \([[:digit:]]\{1,\}\)\(.*\)$/\2/g' | sed -n ''$i'p' | read hostCPUDevPath[i] i=`expr $i + 1`done# 构造结果文件 headline "000000" "查询主机CPU状态信息" i=1while [ $i -le $cpunumber ] do infoline "012201" "查询主机CPU状态信息" "${hostCPUDevPath[i]}" "${hostCPUState[i]}" i=`expr $i + 1`done# 将本次任务的结果文件发送到 OMS 服务器 fputrpt logit INFO "${FUN_NAME}结束" # 删除临时文件 rm -f $TMPPATH/1022.tmp rm -f $TMPPATH/1022a.tmp rm -f $TMPPATH/1022b.tmp
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -