2009-10-15 8 views
2

(j'ai regardé partout pour cela, peut-être mon habileté googler est hors aujourd'hui)script BASH passant entrée stdin à un programme et de donner le contrôle à l'entrée d'utilisateur

J'ai un programme qui nécessite une poignée de cmds d'initialisation de stdin (et pas à travers des arguments). Ce serait bien de déplacer ces commandes dans un script, donc quand le script se termine, je peux commencer à écrire le vrai travail. Donc, quelque chose comme:

cat initcmds.txt | myprogram.exe 

le problème est que le programme (processus enfant) se termine après avoir reçu EOF à la fin de initcmds.txt. Comment est-ce que tu fais ça? (Bash, Korn, cmd.exe, csh, tout bon)

+4

Voir ici: http://stackoverflow.com/questions/1358444/temporary-input-redirection-in-bash - Elle a même des spectacles dans la liste des questions connexes sur la droite :-) – Joey

+0

wow. Je savais que je n'étais pas la première personne à avoir ce problème. Doit avoir utilisé les mauvais mots-clés de recherche. Merci! – MandoMando

Répondre

4

cat initcmds.txt - | myprogram.exe

+0

BTW, si myprogram.exe utilise des commandes d'historique, cela semble le désactiver. Pas certain de pourquoi. – MandoMando

Questions connexes