【问题标题】:How can i print output of a command to a file in Batch Script?如何将命令的输出打印到批处理脚本中的文件?
【发布时间】:2014-12-22 12:19:53
【问题描述】:

我正在尝试使用“调用”方法在批处理文件中调用命令,无论该命令的输出是什么,我都想写入文件。 我从this link 浏览过,但找不到答案。

我正在使用这个命令

call %confPath% GetIniString %datFile% Keyname name >%newFile% >&1

但它总是会创建一个空文件。如何将上述命令的输出写入文件中?

提前致谢。

【问题讨论】:

  • 我很确定所写的命令行根本不起作用,因为 >%newFile% >&1 是非法的。你的意思是写>%newFile% 2>&1。
  • @ths 我还没有尝试过这种组合并且它有效。谢谢!

标签: windows batch-file scripting


【解决方案1】:

>%newFile% 将标准输出重定向到文件。在>&1 中,1 代表标准输出,如果没有指定流,则默认为标准输出,因此>&1 会自行重定向,尽管它已经使用第一个命令进行了重定向。因此,这是非法的,根本不应该生成文件。在我的测试中,这只是中止并显示错误消息。

通常的习惯用法2>&1,OTOH,将流 2(标准 ERROR)重定向到标准输出,从而确保输出和错误消息都在文件中结束。

【讨论】:

    猜你喜欢
    • 2015-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多