0

可能是基本问题,但要么我找不到答案,要么我不知道用什么词来搜索它们。

我有一个命令行程序,它在调用 .exe 后接受三个文件名。我还有一个程序,旨在运行该程序并自动测试它的输出。所以情况是我正在运行一个程序,需要给它说明如何运行另一个程序。通过程序的约束,我需要提供一个将执行模型的单行命令。我的问题是:我如何在 MS DOS 命令提示符下 1)执行程序和 2)在一个命令中提供三个已知文件名。

谢谢!

进一步的上下文:这两个程序不是我写的,而是两个命令行可执行文件。“第一个”程序是一个通过命令提示符运行的简单模型。第二个是校准程序,它需要运行模型(可能数百次)来校准某些输入参数。因此我需要告诉校准程序如何运行模型。但是我需要在一行或一个批处理文件中执行此操作。

4

2 回答 2

0

我认为这会奏效

C:\>program.exe "file1" "file2" "file3"
于 2013-04-05T19:20:26.523 回答
0

我相信你在追求所谓的“管道”。一个程序的输出馈送到另一个程序的输入。这在一个命令行中表示。

例如,dir生成一系列行并sort读取行,对它们进行排序并写出它们。所以,

dir | sort

您可以根据需要将任意数量的程序连接在一起,并传递它们需要的任何参数。

dir | find "2013" | sort

编辑:根据您的评论进行更新。

如果第二个程序只是读取第一个程序的输出,那么你可以这样做。

first <filelist.txt | second

其中 filelist.txt 是一个文本文件,其中包含程序所需的三个响应first。这<意味着first不会读取键入的内容,而是从文件中读取。

于 2013-04-05T20:31:11.437 回答