2013-09-24 58 views
7

我有一個.exe需要3個整數作爲輸入。例如:如何將輸入傳遞給批處理文件中的.exe文件?

myCode.exe < input.txt 

在input.txt中:

2 
3 
8 

現在我想把命令的批處理文件。我怎麼寫批處理文件? (這裏我想在批處理文件中傳遞3個固定整數)

謝謝!

+0

我假設你正在試圖做到這一點,而不與輸入的外部文件? –

+0

是的。沒有外部文件。在用戶第一次設置批處理文件後,這3個數字應該是固定的 – Helen

回答

1

這裏是一個批次的一行,將創建該文件爲您和提供其作爲一個輸入myCode.exe

echo 2 3 8 > output & myCode.exe output 

否則,你可能會需要修改程序讀取參數直接從命令行。

可以將程序標準輸入/輸出/錯誤流重定向到文件或從文件重定向,但我認爲沒有辦法將命令行內容重定向到標準輸入流。看看at this page for details on batch redirection.

+0

現在代碼使用C#並且使用Console.readLine()來獲取輸入。我可能需要在2和3之間添加換行符。 – Helen

+0

查看[here](http://stackoverflow.com/questions/132799/how-can-you-echo-a-newline-in-batch-files)for在批處理文件中嵌入一個換行常量。你可能需要在一行上使用三條回聲語句。 –

+0

echo 9 && echo。 &&回聲19 &&回聲。 $$ echo 2> output | myCode.exe輸出我會嘗試如果這個工程。感謝弗拉基米爾! – Helen

12

這也可能工作:

(
echo 2 
echo 3 
echo 8 
) | mycode.exe 
+0

+1,但基於方式問題的措辭,OP可能需要更簡單的'echo 1 2 3 | mycode.exe' – dbenham

+0

@dbenham我想知道那個,只是編輯了問題 - 他們確實是分開的線路。 – foxidrive

+0

啊,很好 – dbenham

4

試試這個:

的run.bat:

myCode.exe %1 %2 %3

調用示例:

run.bat 111 222 333

,並用文件:

run.bat < input.txt

相關問題