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

skb*_*skb 5 batch-file windows-shell

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

合理?

Joh*_*ler 7

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

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

the_cmd < bar.txt
Run Code Online (Sandbox Code Playgroud)

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

copy myfile.txt bar.txt
@echo %variable% >> bar.txt
Run Code Online (Sandbox Code Playgroud)

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