web-dev-qa-db-fra.com

comment passer des entrées à .exe dans un fichier batch?

J'ai un fichier .exe qui nécessite 3 nombres entiers en entrée. Par exemple:

myCode.exe < input.txt

Dans input.txt: 

2
3
8

Maintenant, je veux mettre la commande dans un fichier de commandes. comment puis-je écrire le fichier de commandes? (Ici, je veux passer 3 entiers fixes dans le fichier de commandes)

MERCI!

11
Helen

Cela peut aussi fonctionner:

(
echo 2
echo 3
echo 8
) | mycode.exe
13
foxidrive

essaye ça:

run.bat:

myCode.exe %1 %2 %3

exemple d'appel:

run.bat 111 222 333

et avec fichier:

run.bat < input.txt

4
msangel

Voici un batch one-liner qui créera le fichier et le fournira en tant qu’entrée au myCode.exe:

echo 2 3 8 > output & myCode.exe output

Sinon, vous devrez probablement modifier votre programme pour lire les arguments directement à partir de la ligne de commande.

Il est possible de rediriger les flux d'entrée/sortie/d'erreur standard du programme vers ou à partir d'un fichier, mais je pense qu'il n'y a aucun moyen de rediriger le contenu de la ligne de commande vers un flux d'entrée standard. Jetez un coup d'oeil sur cette page pour plus de détails sur la redirection par lots.

1
Vladimir Sinenko

essayez type input.txt | myCode.exe

0
R3m