如何将变量作为(我的程序).exe的参数? (批处理文件)

时间:2015-03-03 07:29:21

标签: batch-file

我有一个可执行文件(.exe),它接受来自DOS输入的参数。我认为在运行批处理文件时会很好,它会提示用户输入,并且输入将被设置为变量。不幸的是,我的不太好的想法不起作用。但我确定有一种方法。以下是我的简单意图

SET / p input =“”

CLS

(我的程序).exe%input%

当然DOS在这种情况下不会转换变量。如果有人可以通过一些链接来研究这个问题,那就足够了。非常感谢

3 个答案:

答案 0 :(得分:1)

如果您编程从STDIN获取参数或提取输入("键盘")

,那就不一样了。

如果需要参数,myprogram.exe %input%应该有效。

如果它从键盘输入(STDIN),这应该有帮助:

echo %input%|myprogram.exe

或让它从文件中输入:

myprogram.exe <myinputfile.txt

还有第三种可能性:myprogram.exe自己做键盘手表&#34;。对此没有简单的纯批解决方案。

答案 1 :(得分:0)

试试这个:

@echo off

设置/ p YourParameterValue =请立即输入值

CLS

(您的程序).exe / YourParameterName%YourParameterValue%

答案 2 :(得分:0)

嘿,大家好,感谢您回答我的问题。我得到了一个更好的答案,它适用于我,因为我的程序需要来自用户的输入/参数,并以字符串格式输出结果。

for /f "usebackq tokens=*" %%i in (`YOUR_PROGRAM.EXE YOUR_INPUT`) do @set VAR1=%%i

echo Output from your program is %VAR1%

如果您的程序不需要输入并且您只需要程序的输出值,它也可以正常工作。