写了个bat,ssh远程连接aix服务器执行各种db2巡检命令,并返回日志,像df -g、errpt、db2pd都可以,就执行到db2diag命令就会结束,后边的命令都不会再执行,db2diag也不会返回结果。
====ceshi.bat文件内容如下:=====================================================
@echo off
set dbcheck_path=e:\dbcheck
set checktmp=%dbcheck_path%\tmp\check.tmp.vbs
set checksql=%dbcheck_path%\check_sql
set checklog=%dbcheck_path%\log\t_center.%date:~0,4%%date:~5,2%%date:~8,2%-%time:~0,2%%time:~3,2%%time:~6,2%.txt
::t_center
echo set sh=WScript.CreateObject("WScript.Shell") >%checktmp%
echo WScript.Sleep 300 >>%checktmp%
echo sh.SendKeys "ssh db2inst1@192.168.17.101 <%checksql%\ceshi.sql >%checklog%" >>%checktmp%
echo WScript.Sleep 5000 >>%checktmp%
echo sh.SendKeys "{ENTER}" >>%checktmp%
echo WScript.Sleep 5000 >>%checktmp%
echo sh.SendKeys "111111{ENTER}" >>%checktmp%
echo WScript.Sleep 5000 >>%checktmp%
echo sh.SendKeys "exit" >>%checktmp%
start
cscript //nologo %checktmp%
=====cehis.sql文件内容如下:====================================================
dbname=t_ceshi
date
echo;echo
db2 connect to $dbname >/dev/null
yesterday=`db2 -x " select current timestamp-1 days from sysibm.sysdummy1"`
echo $yesterday
db2diag -t $yesterday -l error |grep -vE 'common communication|catalog services'
db2diag -t $yesterday -l severe
echo