问题已经解决,谢谢:)
源代码在第5楼已贴出,请您认真阅读前几楼文章,有助于了解更多的问题现象
谢谢!
此贴怪异现象在XP/2003下测试得来
其实脚本很简单 就是判断注册表键值
IF EXIST success.log (
copy success.log #success.log
del success.log
)
IF EXIST fail.log (
copy fail.log #fail.log
del fail.log
)
cd. > success.log
cd. > fail.log
... ...
REG QUERY | FIND后加这个IF
if errorlevel 1 (
echo Patch NOT installed !
echo %strComputerName% >> fail.log
echo errlevel=%errorlevel%
set /a p1=p1+1
) else (
echo Patch installed :p
echo %strComputerName% >> success.log
echo errlevel=%errorlevel%
set /a p2=p2+1
)
妖怪问题来了!Lab里一台能找到键值,另一台找不到(脚本执行宿机),那应该fail.log和success.log里各有相应的计算机名。但是!。。。
fail.log里就是空空如也。。。success.log里却有正确的机器名
妖怪啊!!! 2个文件都存在,而且没有被打开
手工只打echo 1111>>fail.log却是OK的
试着把success.log改成fail.log,伊~ 新的fail.log能够被写入(说明ELSE以下code是好的)
把上面的fail.log改成success.log 还是不能正常写入进去(说明可能ELSE以上code有问题)
怀疑有2种可能
1) 上半部分code有问题(不过横看竖看都没问题啊。。。)
2) 和脚本执行的宿机有关,因为只有宿机不被纪录到
搞了好几个小时了 头大了 啊!!!!!
还望高手指点一二
[ Last edited by acoreq on 2006-8-13 at 20:54 ]
源代码在第5楼已贴出,请您认真阅读前几楼文章,有助于了解更多的问题现象
谢谢!
此贴怪异现象在XP/2003下测试得来
其实脚本很简单 就是判断注册表键值
IF EXIST success.log (
copy success.log #success.log
del success.log
)
IF EXIST fail.log (
copy fail.log #fail.log
del fail.log
)
cd. > success.log
cd. > fail.log
... ...
REG QUERY | FIND后加这个IF
if errorlevel 1 (
echo Patch NOT installed !
echo %strComputerName% >> fail.log
echo errlevel=%errorlevel%
set /a p1=p1+1
) else (
echo Patch installed :p
echo %strComputerName% >> success.log
echo errlevel=%errorlevel%
set /a p2=p2+1
)
妖怪问题来了!Lab里一台能找到键值,另一台找不到(脚本执行宿机),那应该fail.log和success.log里各有相应的计算机名。但是!。。。
fail.log里就是空空如也。。。success.log里却有正确的机器名
妖怪啊!!! 2个文件都存在,而且没有被打开
手工只打echo 1111>>fail.log却是OK的
试着把success.log改成fail.log,伊~ 新的fail.log能够被写入(说明ELSE以下code是好的)
把上面的fail.log改成success.log 还是不能正常写入进去(说明可能ELSE以上code有问题)
怀疑有2种可能
1) 上半部分code有问题(不过横看竖看都没问题啊。。。)
2) 和脚本执行的宿机有关,因为只有宿机不被纪录到
搞了好几个小时了 头大了 啊!!!!!
还望高手指点一二
[ Last edited by acoreq on 2006-8-13 at 20:54 ]
