5

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

有道理?

4

1 回答 1

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

您提到 $(variable) 的事实向我表明这是一个生成文件而不是批处理文件。对于makefile,有更好的方法。

于 2010-01-15T23:22:33.657 回答