Comment conserver toute la sortie d'un programme sur la ligne de commande Windows?

31

Disons que vous avez un programme qui donne beaucoup de résultats. Il semble que l'invite de commande ne conserve malheureusement pas tout (il n'y a que jusqu'à présent que vous pouvez faire défiler vers le haut).

Y a-t-il un moyen de tout garder?

Nathaniel
la source

Réponses:

28

L'augmentation de la taille de la mémoire tampon est le meilleur moyen si vous souhaitez simplement faire défiler vers le haut et voir la sortie, que vous pouvez configurer dans les propriétés.

Si vous ajoutez un fichier, vous voudrez probablement aussi les erreurs au cas où il y en aurait:

C: \> somecommand.exe> ​​"C: \ path \ to \ output.txt" 2> & 1

Si vous voulez un téléavertisseur, il y en a moreou moins pour Windows .

Exemple:

C: \> somecommand.exe | Moins

vous pouvez ensuite utiliser fpour avancer ou breculer.

John T
la source
Réponse la plus complète, je pense. Il se trouve que c'est John T. Que savez-vous.
Nathaniel
@Nathaniel, est-ce une mauvaise chose = [] ... :)
John T
Non, j'aime juste te pousser et Molly. Je ne pense pas que j'aimerais vraiment autant de points. Ne semble pas aussi joli par son nom.
Nathaniel
@JohnT, Quelles sont les commandes cmd (par opposition à l'interface utilisateur) pour augmenter la taille du tampon?
Pacerier
1
Pour votre information, vous devez configurer Layout> Screen Buffer Size> Height, non Options> Command History> Buffer Size.
mythofechelon
8

Pour capturer simplement la sortie dans un fichier, consultez les autres réponses. Vous pouvez également augmenter la quantité de texte que vous pouvez faire défiler en arrière et voir jusqu'à une limite.

Avec la fenêtre d'invite de commande ouverte, cliquez sur l'icône [C:] dans la barre de titre pour afficher le menu et sélectionner les propriétés. Sous l'onglet Disposition, changez la taille de la mémoire tampon d'écran -> Hauteur à 9999. Cela vous permettra de faire défiler autant de lignes dans la fenêtre.

Donald Byrd
la source
7

Utilisez-vous Windows XP si vous pouvez l'ajouter à votre commande | more

Vous pouvez également utiliser

opérateurs de redirection de commande

.
Cette page a plus d'informations pour vous.

Kevin Boyd
la source
3
moreexiste depuis l'âge des ténèbres du DOS ...
Joey
5

Exportez les résultats dans un fichier, comme ceci:

C:> RunMyProgram.exe > outputfile.txt
Rob Farley
la source
+1 J'allais répondre à cette question mais je cherchais un meilleur moyen et je n'en ai pas vu. Vous pouvez augmenter la taille du tampon à 999 et le nombre de tampons à 999, mais selon la taille de "beaucoup de sortie", cela peut ne pas être pratique, surtout lorsque vous allez l'enregistrer. Si votre programme nécessite une interaction avec l'utilisateur, vous devez lire le fichier texte pour savoir quelle est la question afin d'y répondre. Dommage que Windows n'ait aucun moyen de vider un journal et de maintenir les tampons d'affichage normaux.
Scott McClenning
@Scott: Le nombre de tampons de sortie n'a pas d'importance pour le nombre de lignes pouvant être affichées. D'une certaine manière, ils sont comme des tampons d'images pour les graphiques; vous pouvez leur écrire et basculer l'affichage sur un autre. La taille du tampon, cependant, va jusqu'à 9999, ce qui devrait suffire pour la plupart des besoins.
Joey
3

vous pouvez augmenter la taille du tampon sur l'historique des commandes (par défaut à 50) sur les propriétés. vous pourriez essayer quelque chose comme 500 ou même 5000, que vous devriez pouvoir faire défiler beaucoup plus.

une autre façon est de rediriger la sortie vers un fichier en utilisant le caractère ">":

ex:

C:> someCommand> output.txt

que d'ouvrir le fichier txt et vous devriez y voir la sortie de la commande.

Decio Lira
la source