【发布时间】:2011-02-02 09:51:06
【问题描述】:
伙计们,我正在使用 git bisect run 等 git 工具,它需要调用命令来构建和测试我的项目。我要做的命令是 nant,它是一个 windows 程序。或者调用 nant 的 build.cmd 脚本。
很容易让 bash 调用 nant 构建来运行。
但困难的部分是如何将标准输出写入文件?
我什至安装了 Windows PowerShell 来尝试从 bash 运行命令。
再次,它可以工作,但标准输出填充显示“权限被拒绝”时 我尝试在构建过程中阅读它。
更新:
运行 nant 时,会使用整个路径。它已安装并运行良好。问题是从 bash 运行时如何获得标准输出。
如果从 Windows 提示符运行 nant,并在行尾使用 "> build.out",您将获得标准输出。但在 bash 下,同样的方法永远不会起作用。它只是说 build.out 被锁定,权限被拒绝。
更新:
使用下面建议的 tee 也不能解决问题。在这种情况下,文件仍然报告“访问被拒绝”,并且在构建运行时尝试读取它。而且,tee 程序从不向标准输出写入任何内容。
【问题讨论】:
-
erm... bash 是一个 unix(esc) shell... 除非您已将“nant”安装到 Windows 中,否则您可以运行它的命令。您还需要注册 nant 以便您可以从任何地方调用它,或者移动到它所在的目录,然后调用该命令。
-
谢谢,我做了更新来回答你的问题。 Nant 已安装,我们使用 nant 的完全限定路径。问题与如何将标准输出获取到文件和文件上的 tail -f 有关。
标签: windows powershell cygwin mingw cmd