2013-09-24 11 views
7

Mam. Exe, który wymaga 3 liczb całkowitych jako dane wejściowe. Na przykład:jak przekazać dane wejściowe do .exe w pliku wsadowym?

myCode.exe < input.txt 

W input.txt:

2 
3 
8 

Teraz chcę umieścić polecenia w pliku wsadowym. jak mogę zapisać plik wsadowy? (Tutaj chcę przekazać 3 stałe liczby całkowite w pliku wsadowym)

DZIĘKI!

+0

Jestem zakładając próbujesz to zrobić bez zewnętrznego pliku z wejściem? –

+0

tak. bez zewnętrznego pliku. Te 3 numery powinny zostać naprawione po tym, jak użytkownik najpierw utworzy plik wsadowy. – Helen

Odpowiedz

1

Oto jedna partia-liner, który utworzy plik dla ciebie i dostarczyć go jako wejście do myCode.exe:

echo 2 3 8 > output & myCode.exe output 

W przeciwnym razie, prawdopodobnie będziesz musiał zmodyfikować swój program do odczytywania argumentów bezpośrednio z linii poleceń.

Możliwe jest przekierowanie standardowych strumieni wejściowych/wyjściowych/błędów programu do lub z pliku, ale myślę, że nie ma możliwości przekierowania zawartości wiersza poleceń do standardowego strumienia wejściowego. Spójrz at this page for details on batch redirection.

+0

Teraz kod jest w języku C# i używa Console.readLine(), aby uzyskać dane wejściowe. Może być konieczne dodanie nowej linii między 2 a 3. – Helen

+0

Zobacz [tutaj] (http://stackoverflow.com/questions/132799/how-can-you-echo-a-newline-in-batch-files) dla osadzanie stałych nowej linii w pliku wsadowym. Prawdopodobnie będziesz potrzebował trzech instrukcji echo na linii. –

+0

echo 9 && echo. && echo 19 && echo. $$ echo 2> wyjście | Plik myCode.exe wypróbuje, jeśli to działa. Dzięki, Vladimir! – Helen

12

ten może również pracować:

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

+1, ale w oparciu o sposób, w jaki jest sformułowane pytanie, OP może potrzebować prostszego "echo 1 2 3 | mycode.exe" – dbenham

+0

@dbenham Zastanowiłem się nad tym i właśnie zredagowałem pytanie - rzeczywiście były na osobnych liniach. – foxidrive

+0

Ahh, dobry połów – dbenham

4

spróbuj tego:

run.bat: przykład

myCode.exe %1 %2 %3

wezwanie:

run.bat 111 222 333

iz pliku:

run.bat < input.txt

Powiązane problemy