如何将bash脚本输出管道传输到Windows上的文件

时间:2017-01-10 09:33:26

标签: windows git bash windows-scripting

我在Windows 7上运行。

我有一个bash脚本,使用"C:\Program Files\Git\git-cmd.exe" "C:\path\myBashScript.sh" 17.1从Windows命令提示符运行正常。我可以看到它在一个新的bash窗口中运行,输出看起来很好并且它关闭了。我想要做的是捕获文件中的输出以供进一步处理。

我试过

"C:\Program Files\Git\git-cmd.exe" "C:\path\myBashScript.sh" 17.1 > C:\out\myBashScript.out.txt

但我输入的所有内容都是工作文件夹,即 C:\path>

这可能吗?

由于

2 个答案:

答案 0 :(得分:1)

“C:\ Program Files \ Git \ git-cmd.exe”是一个前端Windows启动器。我很惊讶它有任何争论。您应该使用bash解释器运行bash脚本:

"C:\Program Files\Git\bin\bash.exe" "C:\path\myBashScript.sh"

PS:我建议在bash脚本中应用重定向而不是在windows命令行中,它们可以更好地控制在那里。

答案 1 :(得分:0)

您需要区分shell脚本中生成的输出和命令行执行生成的输出。

为了轻松捕获shell脚本的输出,您可能会发现重定向更容易>到脚本中的捕获文件。

你没有说出你所使用的系统样式,以及它是如何设置的(Cygwin,GfW; cmd.exe中的命令行,或bash;集成或分离的git命令(在cmd.exe中) )等)。我怀疑无法对命令行进行简单的重定向是因为系统设置问题。