我有以下脚本,它可以逐个执行单独的步骤:
@echo off
set /p guid=Please enter GUID:
start /wait Drop\Debug\Ylp.Web.CmsImportWebJob.exe /test map %guid%
start /wait Drop\Debug\Ylp.Web.CmsImportWebJob.exe /test compare %guid%
start /wait Drop\Debug\Ylp.Web.CmsImportWebJob.exe /test analyse %guid%
start /wait Drop\Debug\Ylp.Web.CmsImportWebJob.exe /test update %guid%
pause
我希望将每个步骤的输出记录到其自己的文本文件中,最好使用与正在执行的进程相对应的名称,这样就可以创建以下日志文件:
map.txt
compare.txt
analyse.txt
update.txt
如果文件前面加上日期和时间,那就更好了:
2015-09-22 10:23:47.048_map.txt
2015-09-22 10:23:47.048_compare.txt
2015-09-22 10:23:47.048_analyse.txt
2015-09-22 10:23:47.048_update.txt
答案1
我猜你现在已经明白了。对于其他可能有类似问题的人,这里有一个答案:
@echo off
set filePrefix=C:\%Date:~10,4%-%Date:~4,2%-%Date:~7,2%%time%_
set /p guid=Please enter GUID:
start /wait Drop\Debug\Ylp.Web.CmsImportWebJob.exe /test map %guid% > %filePrefix%map.txt
start /wait Drop\Debug\Ylp.Web.CmsImportWebJob.exe /test compare %guid% > %filePrefix%compare.txt
start /wait Drop\Debug\Ylp.Web.CmsImportWebJob.exe /test analyse %guid% > %filePrefix%analyse.txt
start /wait Drop\Debug\Ylp.Web.CmsImportWebJob.exe /test update %guid% > %filePrefix%update.txt
pause
请注意,%date% 和 %time% 在不同语言环境中的格式可能有所不同 — %date% 可能包含也可能不包含星期几,可能是 dd/mm 而不是 mm/dd;%time% 可能是 hh:mm:ss 或其他格式(例如,hh-mm-ss),可能带有秒的小数部分(小数点)— 因此可能需要进行调整。可能需要调整 %date% 的偏移量(10、4 和 7)以找到年、月和日。如果 %time% 包含冒号,则需要将其删除/替换为 Windows 文件名,并且小时在 1:00 到 9:59 AM 之间可能有一个前导空格(而不是零)。