可能吗?- [cmd.exe < echo“foo; bar;”] 而不是

可能吗?- [cmd.exe < echo“foo; bar;”] 而不是

我找不到任何地方可以解决这个问题,也找不到办法。我编写了一个应用程序,我希望能够调用该应用程序并向其传递一个脚本,并且它在脚本文件中可以正常工作,但理想情况下,我更愿意将脚本保留在代码中,并以可读(且容易出错)的形式保存在文件之外。有没有办法像这样将一组指令传递给 cmd,或者临时文件是唯一的方法?

答案1

重定向<可以替换为管道

echo foo; bar; | cmd.exe

您可以对命令进行分组:

(echo foo
 echo bar) | cmd.exe

答案2

这取决于您使用的应用程序。许多应用程序能够直接在命令行上使用脚本命令,其他应用程序则能够直接将 stdin 作为要运行的脚本。您需要查看您要调用的特定应用程序的用户指南,以确定需要使用哪种方法。

如果应用程序除了接收文件之外没有其他方法,那么除非使用文件描述符管道等一些超出我理解范围的复杂魔法(而且比简单地使用文件复杂得多),否则恐怕你就没那么幸运了。

相关内容