More

    Comment basculer la sortie de la commande vers un fichier sous Windows

    Vous pouvez souvent exécuter certaines commandes dans une invite de commandes ou PowerShell dans Windows, que ce soit pour effectuer des tâches d’administration, de dépannage ou d’automatisation. Cependant, il arrive parfois d’enregistrer les résultats dans un fichier texte, soit pour référence ultérieure, soit pour une analyse plus approfondie, soit pour les partager avec d’autres personnes.

    Comment faire ? Devez-vous copier et coller manuellement la sortie de la commande dans un fichier texte ? Bien sûr que non. Il existe un moyen plus simple et plus rapide de le faire, et c’est d’utiliser l’opérateur de redirection.

    L’opérateur de redirection est un symbole spécial qui indique au shell (interface de commande) de changer la direction du flux de données de la norme (écran) vers un autre endroit (fichier). À l’aide d’opérateurs de redirection, vous pouvez envoyer facilement et rapidement la sortie de la commande à des fichiers texte.

    cmd

    Dans cet article, vous allez apprendre à utiliser des opérateurs de redirection pour rediriger la sortie d’une commande vers un fichier sous Windows, à l’aide de l’invite de commandes ou de PowerShell. Vous apprendrez également quelques trucs et astuces pour mieux utiliser cette fonctionnalité.

    Qu’est-ce qu’un opérateur de redirection ?

    Un opérateur de redirection est un symbole utilisé pour changer la direction du flux de données d’un standard (écran) à un autre endroit (fichier). Il existe plusieurs opérateurs de redirection que vous pouvez utiliser, en fonction de ce que vous voulez faire avec la sortie de la commande.

    Voici une liste des opérateurs de redirection les plus couramment utilisés dans Windows :

    • > : Cet opérateur permet de rediriger la sortie de la commande vers un nouveau fichier. Si le fichier existe déjà, son contenu sera écrasé par la sortie de la commande.
    • >> : Cet opérateur est utilisé pour rediriger la sortie de la commande vers un fichier existant. Si le fichier n’existe pas déjà, un nouveau fichier sera créé. La sortie de la commande sera ajoutée à la fin du fichier sans supprimer le contenu précédent.
    • < : Cet opérateur permet de prendre l’entrée d’un fichier et de la transmettre à la commande. Ceci est utile si vous souhaitez exécuter une commande avec des paramètres stockés dans un fichier texte.
    • | : Cet opérateur permet de corréler la sortie d’une commande avec l’entrée d’une autre commande. C’est ce qu’on appelle le pipelining, et cela vous permet de créer une série de commandes interdépendantes.

    Comment utiliser les opérateurs de redirection dans l’invite de commande

    L’invite de commande est une interface de ligne de commande intégrée à Windows que vous pouvez utiliser pour exécuter diverses commandes et programmes. Pour utiliser l’opérateur de redirection dans l’invite de commande, il vous suffit de l’ajouter après la commande que vous souhaitez exécuter, suivi du nom du fichier de destination.

    Par exemple, si vous souhaitez exécuter la commande “dir” pour afficher une liste de fichiers et de dossiers dans le répertoire actuel et enregistrer les résultats dans un fichier nommé “list.txt”, vous pouvez taper la commande suivante :

    dir > list.txt

    Cette commande créera un nouveau fichier nommé “list.txt” dans le répertoire courant, et y écrira la sortie de la commande dir. Si le fichier existe déjà, son contenu sera écrasé par la sortie de la commande.

    Si vous souhaitez ajouter la sortie de la commande “dir” à un fichier existant, par exemple, “list.txt”, vous pouvez utiliser l’ opérateur “>>“ comme suit :

    dir >> list.txt

    Cette commande ajoutera la sortie de la commande “dir” à la fin de “file list.txt”, sans supprimer le contenu précédent. Si le fichier n’existe pas déjà, un nouveau fichier sera créé.

    Vous pouvez également utiliser l’opérateur “<“ pour transmettre l’entrée d’un fichier à une commande. Par exemple, si vous disposez d’un fichier nommé “commands.txt” qui contient plusieurs commandes que vous souhaitez exécuter séquentiellement, vous pouvez taper la commande suivante :

    cmd < commands.txt

    Cette commande exécutera un nouveau shell (cmd) et fournira une entrée du fichier “commands.txt” à ce shell. Chaque ligne du fichier “commands.txt” sera considérée comme une commande à exécuter.

    Vous pouvez également utiliser l’opérateur “|” pour corréler la sortie d’une commande avec l’entrée d’une autre commande. Par exemple, si vous souhaitez exécuter la commande “dir” pour afficher une liste de fichiers et de dossiers dans le répertoire actif, puis exécuter la commande “find” pour rechercher un fichier ou un dossier spécifique, vous pouvez taper la commande suivante :

    dir | find “test”

    Cette commande enverra la sortie de la commande “dir” à l’entrée de la commande find et recherchera le mot “test” dans cette sortie. Les résultats s’afficheront à l’écran.

    Comment utiliser les opérateurs de redirection dans PowerShell

    PowerShell est une interface de ligne de commande avancée que vous pouvez utiliser pour exécuter diverses commandes et scripts dans Windows. PowerShell a les mêmes opérateurs de redirection que l’invite de commandes, mais il a également des opérateurs supplémentaires qui sont plus flexibles et puissants.

    Voici une liste d’opérateurs de redirection que vous pouvez utiliser dans PowerShell :

    • > : Cet opérateur permet de rediriger la sortie de la commande vers un nouveau fichier. Si le fichier existe déjà, son contenu sera écrasé par la sortie de la commande. Cet opérateur commute simplement la sortie appelée “stream 1” ou “output stream”, qui est la sortie normale affichée à l’écran.
    • >> : Cet opérateur est utilisé pour rediriger la sortie de la commande vers un fichier existant. Si le fichier n’existe pas déjà, un nouveau fichier sera créé. La sortie de la commande sera ajoutée à la fin du fichier, sans supprimer le contenu précédent. Cet opérateur commute simplement le flux de sortie.
    • < : Cet opérateur permet de prendre l’entrée d’un fichier et de la transmettre à la commande. Ceci est utile si vous souhaitez exécuter une commande avec des paramètres stockés dans un fichier texte.
    • | : Cet opérateur permet de corréler la sortie d’une commande avec l’entrée d’une autre commande. C’est ce qu’on appelle le pipelining, et cela vous permet de créer une série de commandes interdépendantes.
    • 2> : Cet opérateur permet de rediriger une sortie appelée “stream 2” ou “error stream”, c’est-à-dire une sortie contenant un message d’erreur affiché à l’écran.
    • 2>> : Cet opérateur est utilisé pour rediriger les erreurs de flux vers des fichiers existants. Si le fichier n’existe pas déjà, un nouveau fichier sera créé. La sortie du flux d’erreur sera ajoutée à la fin du fichier, sans supprimer le contenu précédent.
    • 3> : Cet opérateur permet de rediriger une sortie appelée “stream 3” ou “warning stream”, c’est-à-dire une sortie contenant un message d’avertissement affiché à l’écran.
    • 3>> : Cet opérateur permet de rediriger le flux d’alerte vers un fichier existant. Si le fichier n’existe pas déjà, un nouveau fichier sera créé. La sortie du flux d’avertissement sera ajoutée à la fin du fichier, sans supprimer le contenu précédent.
    • 4> : Cet opérateur est utilisé pour rediriger la sortie appelée “stream 4” ou “verbose stream”, c’est-à-dire la sortie contenant des informations supplémentaires affichées à l’écran si vous utilisez le paramètre -Verbose dans les commandes.
    • 4>> : Cet opérateur permet de rediriger le flux détaillé vers un fichier existant. Si le fichier n’existe pas déjà, un nouveau fichier sera créé. La sortie du flux détaillé sera ajoutée à la fin du fichier, sans supprimer le contenu précédent.
    • 5> : Cet opérateur est utilisé pour rediriger la sortie appelée “stream 5” ou “debug stream”, qui est une sortie contenant des informations de débogage affichées à l’écran si vous utilisez le paramètre -Debug dans la commande.
    • 5>> : Cet opérateur permet de rediriger le flux de débogage vers un fichier existant. Si le fichier n’existe pas déjà, cette commande ajoute la sortie de débogage du flux à la fin du fichier, sans supprimer le contenu précédent.

    Vous pouvez utiliser ces opérateurs de redirection simultanément pour basculer la sortie de différents flux vers différents fichiers. Par exemple, si vous souhaitez exécuter la commande “Get-Process” pour afficher la liste des processus en cours d’exécution sur votre système et rediriger la sortie normale vers le fichier “process.txt”, la sortie d’erreur vers le fichier “error.txt” et la sortie détaillée vers le fichier “verbose.txt”, vous pouvez taper la commande suivante :

    Get-Process -Verbose > process.txt 2> error.txt 4> verbose.txt

    Cette commande créera trois nouveaux fichiers dans le répertoire courant et écrira la sortie de chaque flux dans le fichier correspondant. Si les fichiers existent déjà, leur contenu sera écrasé par la sortie de la commande.

    Vous pouvez également utiliser des opérateurs de redirection spéciaux appelés “tee-object” pour rediriger la sortie de la commande vers un fichier tout en l’affichant à l’écran. Ceci est utile si vous souhaitez enregistrer la sortie de la commande pour référence ultérieure, mais que vous souhaitez également la voir en direct.

    Pour utiliser tee-object, vous devez ajouter le symbole “|” après la commande que vous voulez exécuter, suivi du mot “tee” et du nom du fichier de destination. Par exemple, si vous souhaitez exécuter la commande “Get-Date” pour afficher la date et l’heure actuelles, et rediriger la sortie vers le fichier “date.txt” tout en l’affichant à l’écran, vous pouvez taper la commande suivante :

    Get-Date | Tee date.txt

    Cette commande créera un nouveau fichier nommé date.txt dans le répertoire actuel et y écrira la sortie de la commande Get-Date. La sortie sera également affichée à l’écran.

    Conclusion

    À l’aide d’opérateurs de redirection, vous pouvez enregistrer facilement et rapidement la sortie de la commande dans un fichier texte, sans avoir à la copier et à la coller manuellement. Vous pouvez également envoyer la sortie de la commande à d’autres endroits, tels que le presse-papiers, l’imprimante ou d’autres commandes.

    L’opérateur de redirection est une fonctionnalité très utile et pratique pour effectuer diverses tâches dans Windows, que ce soit à des fins d’administration, de dépannage ou d’automatisation. En maîtrisant les opérateurs de redirection, vous pouvez augmenter votre productivité et votre efficacité dans l’exécution des commandes dans Windows.

    Dernières articles