将文本发送到Windows控制台应用程序的标准输入

时间:2010-01-15 23:19:20

标签: batch-file windows-shell

我正在尝试编写一个.bat文件来自动执行一些shell命令。大多数命令都很简单,我可以直接将它们放入批处理文件中,但有一个命令,而不是采用命令行参数,希望您使用“标准输入”键入所需的选项。我不确定这意味着什么。谁能告诉我怎么做?我要输入的文本是目录中其中一个文件的内容:“options.txt”我想与批处理文件“$(additionaloptions)”中的变量连接。

有意义吗?

1 个答案:

答案 0 :(得分:7)

在.bat文件中执行此操作的常用方法是使用echo编写一个小文本文件,然后将文本文件重定向到命令的标准文件。

@echo foo > bar.txt
@echo if you need multiple lines >> bar.txt

the_cmd < bar.txt

在您的具体示例中,它会像

copy myfile.txt bar.txt
@echo %variable% >> bar.txt

你提到$(变量)的事实告诉我,这是一个makefile而不是批处理文件。对于一个makefile,这是一个更好的方法。