免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3511 | 回复: 8
打印 上一主题 下一主题

请教一个脚本执行的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-05-09 13:48 |只看该作者 |倒序浏览
我按照精华区里提供的监控脚本,也修改了一个。并且配好了email,放在cron中,定时执行,有问题就发email到我的邮箱里面。但是发现一个问题,当脚本在所在目录执行的时候一点儿问题都没有,但是如果在其他目录用全路经的方式执行,就是不发email,我改了半天也没有头绪,请问有谁能帮帮俺,如何解决呢?

下面附上我写的脚本

论坛徽章:
0
2 [报告]
发表于 2004-05-09 13:54 |只看该作者

请教一个脚本执行的问题

#!/usr/bin/sh

# check bkfx system
# $mailbox ---------------user\'s mail

#$bkfxCSCC -------Queue CSCC
# $bkfxwpect --- Max Warning Percentage
# $bkfxepct ---Max Error Percentage

# $mntpt --- Mount point
# $usdpct --- %used (bdf output)
# $usdamt --- %used * 100 (If usdpct = 63% then usdamt = 63
# $wpect --- Max Warning Percentage
# $epct ---Max Error Percentage
# Check if fsswitch exists ------

#. $HOME/.profile

if [[ ! -f /post_app/bkfx_app/bkfx/wangqiang/bkfx.sysmon ]]
then
echo \"The configuration file /post_app/bkfx_app/bkfx/wangqiang/bkfx.sysmon does not exist!\"
exit
fi

if [[ ! -f /post_app/bkfx_app/bkfx/wangqiang/fs.sysmon ]]
then
echo \"The configuration file /post_app/bkfx_app/bkfx/wangqiang/fs.sysmon does not exist!\"
exit
fi

if [[ ! -f /post_app/bkfx_app/bkfx/wangqiang/mailbox.sysmon ]]
then
echo \"The configuration file /post_app/bkfx_app/bkfx/wangqiang/mailbox.sysmon does not exist!\"
exit
fi

#set -x

touch /post_app/bkfx_app/bkfx/wangqiang/$$.rslt
touch /post_app/bkfx_app/bkfx/wangqiang/$$.rslt_bk
touch /post_app/bkfx_app/bkfx/wangqiang/$$.rslt_bk1
touch /post_app/bkfx_app/bkfx/wangqiang/$$.rslt_Cc
touch /post_app/bkfx_app/bkfx/wangqiang/nnn

/post_app/bkfx_app/bkfx/wangqiang/check.sh 1>;/post_app/bkfx_app/bkfx/wangqiang/$$.rslt_bk1 2>;/dev/null

cat /post_app/bkfx_app/bkfx/wangqiang/$$.rslt_bk1|grep CSCC|awk \'{print $3}\' |while read bkfxCSCC
do


# bkfx
bkepct=3000
bkwpct=0


if [ $bkfxCSCC -gt $bkepct ]
then
echo \"Error: Queue CSCC is ${bkfxCSCC}.\" >;>;/post_app/bkfx_app/bkfx/wangqiang/nnn
else
if [ $bkfxCSCC -gt $bkwpct ]
then
echo \"Warning: Queue CSCC is ${bkfxCSCC}.\" >;>;/post_app/bkfx_app/bkfx/wangqiang/nnn
fi
fi
done

cat /post_app/bkfx_app/bkfx/wangqiang/mailbox.sysmon | while read mailbox
do
if [ -s /post_app/bkfx_app/bkfx/wangqiang/nnn ]
then
if grep \"Error:\" /post_app/bkfx_app/bkfx/wangqiang/nnn >;/dev/null
then
/usr/bin/mailx -sv \"Fs-Err\" -r \"fs@$(hostname)\" $mailbox < /post_app/bkfx_app/bkfx/wangqiang/nnn
else
/usr/bin/mailx -sv \"Fs-Wrn\" -r \"fs@$(hostname)\" $mailbox < /post_app/bkfx_app/bkfx/wangqiang/nnn
fi
fi
done

论坛徽章:
0
3 [报告]
发表于 2004-05-09 13:56 |只看该作者

请教一个脚本执行的问题

bdf|grep -iv filesystem |awk \'length>;30\' |while read aaa bbb ccc ddd eee fff
do
#echo \"aaa=\" $aaa \"bbb =\" $bbb \"ccc =\" $ccc \"ddd =\" $ddd \"eee =\" $eee \"fff =\" $fff
if [ -s $fff ]
then
mntpt=$fff
usdpct=$eee
#echo $mntpt\" \"$usdpct

else
mntpt=$eee
usdpct=$ddd
#echo $mntpt\" \"$usdpct
fi
#done 2>;/dev/null

mntpt=`echo $mntpt |tr -d \"/\"`
if [[ $mntpt = \"\" ]]
then
mntpt=\"/\"
fi

usdamt=`echo $usdpct |tr -d \"%\"`

cat /post_app/bkfx_app/bkfx/wangqiang/fs.sysmon|grep -v \"#\"|grep \"$mntpt\"|read w1 w2 w3 w4 w5 w6
#echo \"w1\"\"  \"$w1 \"w2\"\"  \"$w2 \"w3\"\"  \"$w3\"w4\"\"  \"$w4\"w5\"\"  \"$w5\"w6\"\"  \"$w6

if [ \"$w4\"=\" \" ]
then
wpct=$w2
epct=$w3
else
wpct=$w2
epct=$w3
fi

#wpct=`more /post_app/bkfx_app/bkfx/wangqiang/fs.sysmon|grep -v \"#\"|grep \"$mntpt\"|awk \'{print $2}\'`
#epct=`more /post_app/bkfx_app/bkfx/wangqiang/fs.sysmon|grep -v \"#\"|grep \"$mntpt\"|awk \'{print $3}\'`
#yyy=`more /post_app/bkfx_app/bkfx/wangqiang/fs.sysmon|grep -v \"#\"|grep \"$mntpt\"|awk \'{print $1}\'`
#echo \"aaaaaaa\"\"     \"$wpct\" \"$epct\" \"$usdamt\" \"$mntpt
#echo $yyy

#wpct=`more /post_app/bkfx_app/bkfx/wangqiang/fs.sysmon|grep -v \"#\"|grep \"$mntpt\"|awk \'{print $2}\'`
#epct=`more /post_app/bkfx_app/bkfx/wangqiang/fs.sysmon|grep -v \"#\"|grep \"$mntpt\"|awk \'{print $3}\'`

if [[ \"$wpct\" = \"\" ]]
then
wpct=90
fi
if [[ \"$epct\" = \"\" ]]
then
epct=95
fi

if [[ $mntpt != \"/\" ]]
then
mntpt=\"/\"$mntpt
fi
#set -x

if [ $usdamt -gt $epct ]
then
echo \"Errormntpt file system\'s usage is ${usdamt}%.\" >;>;/post_app/bkfx_app/bkfx/wangqiang/$$.rslt
else
if [ $usdamt -gt $wpct ]
then
echo \"Warningmntpt file system\'s usage is ${usdamt}%.\" >;>;/post_app/bkfx_app/bkfx/wangqiang/$$.rslt
fi
fi
done

论坛徽章:
0
4 [报告]
发表于 2004-05-09 13:57 |只看该作者

请教一个脚本执行的问题

cat /post_app/bkfx_app/bkfx/wangqiang/mailbox.sysmon | while read mailbox
do
if [[ -s /post_app/bkfx_app/bkfx/wangqiang/$$.rslt ]]
then
    if grep \"Error:\" /post_app/bkfx_app/bkfx/wangqiang/$$.rslt >;/dev/null
     then
/usr/bin/mailx -sv \"Fs-Err\" -r \"fs@$(hostname)\" $mailbox < /post_app/bkfx_app/bkfx/wangqiang/$$.rslt

     else
    /usr/bin/mailx -sv \"Fs-Wrn\" -r \"fs@$(hostname)\" $mailbox < /post_app/bkfx_app/bkfx/wangqiang/$$.rslt
     fi
fi

done

论坛徽章:
0
5 [报告]
发表于 2004-05-09 13:58 |只看该作者

请教一个脚本执行的问题

touch /post_app/bkfx_app/bkfx/wangqiang/$$.rslt_Cc
ps -ef|grep Cc|wc| read q1 q2 q3

cat /post_app/bkfx_app/bkfx/wangqiang/mailbox.sysmon | while read mailbox
do
if [ $q1 != 13 ]
then
echo \"Error:Cc is $q1.\" >;>;/post_app/bkfx_app/bkfx/wangqiang/$$.rslt_Cc
/usr/bin/mailx -sv \"Fs-Err\" -r \"fs@$(hostname)\" $mailbox < /post_app/bkfx_app/bkfx/wangqiang/$$.rslt_Cc
fi
done

论坛徽章:
0
6 [报告]
发表于 2004-05-09 13:59 |只看该作者

请教一个脚本执行的问题

rm /post_app/bkfx_app/bkfx/wangqiang/$$.rslt
rm /post_app/bkfx_app/bkfx/wangqiang/$$.rslt_bk1
rm /post_app/bkfx_app/bkfx/wangqiang/$$.rslt_bk
rm /post_app/bkfx_app/bkfx/wangqiang/$$.rslt_Cc
rm /post_app/bkfx_app/bkfx/wangqiang/nnn

unset bkfxCSCC
unset usdamt
unset wpct
unset epct
unset bkwpct
unset bkepct
unset usdpct
unset mntpt
unset mailbox

论坛徽章:
0
7 [报告]
发表于 2004-05-09 14:02 |只看该作者

请教一个脚本执行的问题

不能一次贴上,按照顺序贴了所有的。其中mailbox,fs.sysmon是email和检查磁盘空间的参数文件,完全按照精华区的。

在脚本所在目录中的文件权限都是777,目录本身的权限也是777,但是只要不在此目录下执行,邮件就不发送,好奇怪?

论坛徽章:
0
8 [报告]
发表于 2004-05-09 16:57 |只看该作者

请教一个脚本执行的问题

脚本太长了,我没仔细看,给你提供个调试方法:
第一行用!/usr/bin/sh -xv可以输出每步的执行过程,如果在运行时用>;>;输出到一个log文件中可以看得很清楚。

论坛徽章:
0
9 [报告]
发表于 2004-05-09 17:00 |只看该作者

请教一个脚本执行的问题

谢谢!
我也找到问题了,是调用check.sh出的错,check.sh里面有非全路径的内容。
看来一个脚本要写好了,真是不容易哦

谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP