我有2个批处理文件(例如a.bat和b.bat)。我从a.bat调用b.bat:@call b.bat
b.bat中有一些echo语句,一些DB启动命令通常会显示启动数据库服务...服务启动等消息......一些复制文件语句...
我将所有这些消息从b.bat放入日志文件中。例如:sc delete ServName >> C:\test\log.log
..这些服务删除消息将成功进入日志文件
当我直接运行b.bat时,它会在命令提示符和日志文件中显示所有这些消息,但是当我从a.bat调用b.bat时,这些(复制文件,启动db等)消息它们不会显示在命令提示符中..它们只显示在日志文件中....
有没有办法在cmd窗口上显示b.bat文件时所有这些返回消息,当它被a.bat调用时
由于
答案 0 :(得分:0)
如果您只想在执行后查看结果,只需在末尾添加“TYPE logfile.log”。
Cmd不支持多个输出流或复制,因此如果您需要“实时视图”,则需要从管道逐个处理该行:
for / f“tokens = *”%f in('Call b.bat')do @echo%f&& @echo%f>> log.txt
如果您是从a.bat执行此操作,则可能需要将%f替换为%% f