2010-11-10 13 views
1

Comment sortir en sortie de la console tampon? Par exemple, j'ai juste besoin de la sortie de la commande "ipconfig -all", et je veux stocker cette information dans un tampon?Comment sortir en sortie de la console tampon?

+1

Qui est-ce? Quelle est la sortie de la console tampon? Quel genre de tampon? etc –

+1

Connexes: http://stackoverflow.com/questions/2033878/cross-platform-redirect-of-standard-input-and-output-of-spawned-process-in-native –

+0

Avez-vous voulu dire: "Comment rediriger la sortie de la console d'un autre processus vers un tampon "? – MSalters

Répondre

1

Il semble que vous avez un XY problem

Qu'est-ce que vous voulez vraiment faire est de capturer la sortie d'une autre commande. Toute la partie "tampon" est votre premier coup à une réponse. Ça ne t'aide pas, et en fait ça t'a coincé dans la mauvaise direction. Badgerr offre des solutions, mais la solution la plus courante est popen("ifconfig -a", "r"). Cela ne retourne pas un tampon, il renvoie un FILE* que vous pouvez passer à fread. C'est une fonction POSIX disponible sur Linux.

Sous Windows, vous appelez CreateProcess et transmettez une structure STARTUPINFO contenant dwFlags=STARTF_USESTDHANDLES et hStdOutput=ResultOfCreatePipe.

+0

thnx tout pour l'aide, vous me donnez exactement ce que je cherche :) – raptor

3

Vous pouvez écrire la sortie d'une application console dans un fichier (au moins sous Windows) en utilisant le paramètre>. Par exemple, dans votre cas, vous devez écrire ipconfig -all> C: \ output.txt pour écrire les informations dans output.txt.

Sinon, si vous le faites dans le code, vous pouvez créer un processus qui exécute ipconfig, et lire la sortie standard en utilisant des méthodes alambiquées de Microsoft http://msdn.microsoft.com/en-us/library/ms682499%28VS.85%29.aspx ou un cadre d'application tel que Qt, ce qui simplifie la gestion des processus http://qt.nokia.com/products/ - voir QProcess: http://doc.qt.nokia.com/4.3/qprocess.html#readAllStandardOutput

+3

Ce serait bien, si quelqu'un downvotes, ils laisser un commentaire disant pourquoi. Je suis ici pour apprendre aussi. – badgerr

+0

Downvotes anonymes sont l'un de mes principaux antipathies sur Stack Overflow. Je pense que cette information est pertinente et précise donc +1 –