2015-11-05 279 views
0

我执行批处理文件在Windows如下:Windows批处理文件执行日志

EXEC MASTER..XP_CMDSHELL“\远程驱动器\ temp.bat”

我怎么能找出什么时候是上次执行该文件时,完成执行需要多长时间或其他任何信息?

p.s.我无法以任何方式编辑批处理文件。

预先感谢您!

+0

忘了提..我也不能使用Windows任务调度程序:( – user1552698

回答

2

不要直接运行;建立另一个批处理文件来运行它。喜欢的东西:

@echo off 
>>mylogfile.txt echo started at %date% %time% 
EXEC MASTER..XP_CMDSHELL "\remote-drive\temp.bat" 
>>mylogfile.txt echo finished at %date% %time% 

我不明白EXEC MASTER..XP_CMDSHELL "\remote-drive\temp.bat" 如果你想运行一个批处理文件,你应该使用call batchfile.bat

0

SQL?修改Stephan's answer:不要直接运行;建立另一批文件temp_with_log.bat来运行它。喜欢的东西:

@echo off 
>>mylogfile.txt echo started at %date% %time% 
call "\remote-drive\temp.bat" 
>>mylogfile.txt echo finished at %date% %time% 

,并运行以下命令

EXEC MASTER..XP_CMDSHELL "\remote-drive\temp_with_log.bat" 

如果"\remote-drive\temp.bat"包含EXIT command没有/B开关,使用start "" /W cmd /C代替call如下:

@echo off 
>>mylogfile.txt echo started at %date% %time% 
start "" /W cmd /C "\remote-drive\temp.bat" 
>>mylogfile.txt echo finished at %date% %time% 
+0

也许'EXEC MASTER..XP_CMDSHELL'“\ remote-drive \ temp_wit h_log.bat“''。不确定正确使用单引号和双引号。 – JosefZ