首页 文章

将cmd stdout和sdterr重定向回父级

提问于
浏览
2

如果我使用start命令从cmd提示符创建进程(打开一个新的cmd),是否可以将stdout和stderr从该进程重定向回调用cmd?

2 回答

  • 3

    如果希望STARTed进程的输出显示在父命令控制台中,则只需使用 START /B 选项 .

    如果要处理命令的输出,则应使用 FOR /F ... in ('someCommand') DO ... .

  • 0

    好 . 我还没有找到这个问题的直截了当的答案 . 我不想用我认为不必要的细节来掩盖我的问题,但看到我因为缺乏这个而受到批评,我会在这里扩展一下 .

    我想在我们的 生产环境 线上自动更新FW,所以我有一个python应用程序从ftp获取FW,然后使用处理器flash工具通过python subprocess命令将其上传到主板的flash . 除了其中一个工具外,所有工具都可以 .

    当一个工具没有在自己的终端中运行时,它似乎有一个问题,所以我提供了一个子进程命令字符串的开始,它允许它在自己的终端中运行OK . 但是,出于记录原因,我需要来自其他终端的输出 .

    一个可能的解决方案是使用>>或wintee将stdout和stderr记录到文件,然后通过我原始应用程序中的一个线程轮询该文件(可能是一个相当复杂的问题解决方案) . 但是,该工具还有一个单独的问题,它不喜欢任何std重定向,所以这对我不起作用 .

相关问题