3

背景:我们有一台从 TFS 获取并构建项目和许多安装(包括 Installshield)的构建机器。我想扫描 TFS get 命令的输出以突出显示该过程中的任何本地文件错误或警告。

问题:使用时

tf.exe get /force /recursive >>mylogfile.txt

我得到了一个非常大的成功项目日志文件,但最后它说

---- Summary: 0 conflicts, 0 warnings, 1 errors ----

错误似乎从日志文件的内容中丢失,但出现在命令行窗口中。

有什么方法可以让 tf.exe 将所有警告和错误输出到我的日志文件中?

4

2 回答 2

8

改用这个:

tf.exe get /force /recursive 1> mylogfile.txt 2>&1

tf.exe 在 STDERR 流上输出错误,而默认重定向仅捕获 STDOUT 流,将 STDERR 留在命令提示符中(这就是您看不到错误的原因)。上面的语法将 STDERR 重定向到 STDOUT,然后将 STDOUT 重定向到文件中。

于 2012-09-05T17:55:16.237 回答
3

如何将 stderr 与 stdio 一起重定向?

tf get /force /r > mylogfile.txt 2>&1
于 2012-09-05T17:56:20.257 回答