如何重定向批处理文件中一个命令的输出?

如何重定向批处理文件中一个命令的输出?

编辑:这个问题已经有答案了,请向下滚动⬇️

这个问题与服务器故障有关,因为我在将一些 Web 文件部署到我的服务器之前会自动缩小它们。

所以我有一个批处理文件,它调用缩小像这样:
minify "index.html" > "index.html.minified"

Minify 基本上从命令行参数中获取 html/css/js 文件并对其进行“最小化”,以便更快地加载,然后将最小化的输出打印到 stdout。我试图将该输出保存到文件中index.html.minified

但是上述命令之后的命令不会在批处理文件中执行。我的意思是,在我调用此命令后,整个批处理的执行就停止了。文件index.html.minified创建正确,但其后的命令(如echo Done minifying HTML)不会执行,并且命令窗口冻结到我不得不强制退出的程度。

尝试将程序的输出保存到文件后,如何让批处理文件继续执行?

链接到我创建的整个批处理文件,我调用 minify 的部分位于末尾附近

答案1

啊,所以我找到了这个问题的答案。

我不会尝试直接在当前批处理文件中运行该命令(minify index.html > index.html.minified),而是宁愿这样做,cmd /c minify "Y:/wamp/www/index.html" > "Y:/wamp/www/index.html.minified"在命令提示符的新实例中运行它。

此解决方案允许批处理文件的其余部分在单独实例完成后继续执行。

相关内容