Envoie la sortie à un fichier.

Syntaxe

Out-File [-FilePath] <string> [[-Encoding] <string>] [-Append] [-Force] [-InputObject <psobject>] [-NoClobber] [-Width <int>] [-Confirm] [-WhatIf] [<CommonParameters>]

Description

L'applet de commande Out-File envoie la sortie à un fichier. Vous pouvez utiliser cette applet de commande à la place de l'opérateur de redirection (&gt;) lorsque vous devez utiliser ses paramètres.

Paramètres

-Append

Ajoute la sortie à la fin d'un fichier existant, au lieu de remplacer le contenu du fichier.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

-Encoding <string>

Spécifie le type d'encodage de caractères utilisé dans le fichier. Les valeurs valides sont « Unicode », « UTF7 », « UTF8 », « UTF32 », « ASCII », « BigEndianUnicode », « Default » et « OEM ». « Unicode » est la valeur par défaut.

« Default » utilise l'encodage de la page de codes ANSI actuelle du système.

« OEM » utilise l'identificateur de la page de codes du fabricant d'ordinateurs OEM actuel pour le système d'exploitation.

Obligatoire ?

false

Position ?

2

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

-FilePath <string>

Spécifie le chemin d'accès au fichier de sortie.

Obligatoire ?

true

Position ?

1

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

-Force

Permet à l'applet de commande de remplacer un fichier en lecture seule existant. Même en utilisant le paramètre Force, l'applet de commande ne peut pas remplacer les restrictions de sécurité.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

-InputObject <psobject>

Spécifie les objets à écrire dans le fichier. Entrez une variable contenant les objets ou tapez une commande ou une expression qui obtient les objets.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

true (ByValue)

Accepter les caractères génériques ?

false

-NoClobber

Ne remplace pas un fichier existant (n'écrase pas son contenu). Par défaut, si un fichier existe dans le chemin d'accès spécifié, Out-File le remplace sans avertissement. Si les deux paramètres Append et NoClobber sont utilisés, la sortie est ajoutée au fichier existant.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

-Width <int>

Spécifie le nombre de caractères dans chaque ligne de sortie. Tous les caractères additionnels sont tronqués, et non renvoyés à la ligne. Si vous omettez ce paramètre, la largeur est déterminée par les caractéristiques de l'hôte. La valeur par défaut pour la console Windows PowerShell est 80 (caractères).

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

-Confirm

Vous invite à confirmer l'exécution de la commande.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

-WhatIf

Décrit le résultat que vous obtiendriez en exécutant la commande, sans réellement l'exécuter.

Obligatoire ?

false

Position ?

named

Valeur par défaut

Accepter l'entrée de pipeline ?

false

Accepter les caractères génériques ?

false

<CommonParameters>

Cette applet de commande prend en charge les paramètres courants : -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer et -OutVariable. Pour plus d'informations, consultez about_Commonparameters.

Entrées et sorties

Le type d'entrée est le type des objets que vous pouvez diriger vers l'applet de commande. Le type de retour est le type des objets que l'applet de commande retourne.

Entrées

System.Management.Automation.PSObject

Vous pouvez diriger n'importe quel objet vers Out-File.

Sorties

Aucun

Out-File ne génère aucune sortie.

Remarques

Les applets de commande Out ne mettent pas en forme les objets ; ils les restituent seulement et les envoient à la destination d'affichage spécifiée. Si vous envoyez un objet non mis en forme à une applet de commande Out, l'applet de commande l'envoie à une applet de commande de mise en forme avant de le restituer.

Les applets de commande Out n'ont pas de paramètres pour les noms ou les chemins d'accès aux fichiers. Pour envoyer des données à une applet de commande contenant le verbe Out (applet de commande Out), utilisez un opérateur de pipeline (|) pour envoyer la sortie d'une commande Windows PowerShell vers l'applet de commande. Vous pouvez également stocker des données dans une variable et utiliser le paramètre InputObject pour passer les données à l'applet de commande. Pour l'aide, consultez les exemples.

Out-File envoie des données, mais n'émet pas d'objets de sortie. Si vous dirigez la sortie de Out-File vers Get-Member, Get-Member indique qu'aucun objet n'a été spécifié.

Exemple 1

C:\PS>get-process | out-file -filepath C:\Test1\process.txt

Description
-----------
Cette commande envoie une liste de processus sur l'ordinateur au fichier Process.txt. Si le fichier n'existe pas, Out-File le crée. Dans la mesure où le nom du paramètre FilePath est facultatif, vous pouvez l'omettre et envoyer la commande équivalente « get-process | outfile C:\Test1\process.txt ».






Exemple 2

C:\PS>get-process | out-file C:\Test1\process.txt -noclobber

Out-File : File C:\Test1\process.txt already exists and NoClobber was specified.
At line:1 char:23
+ get-process | out-file  <<<< process.txt -noclobber

Description
-----------
Cette commande envoie également une liste de processus au fichier Process.txt, mais utilise le paramètre NoClobber qui empêche un fichier existant d'être remplacé. La sortie indique le message d'erreur qui apparaît lorsque NoClobber est utilisé avec un fichier existant.






Exemple 3

C:\PS>$a = get-process

C:\PS> out-file -filepath C:\Test1\process.txt -inputobject $a -encoding ASCII -width 50

Description
-----------
Ces commandes envoient une liste de processus sur l'ordinateur au fichier Process.txt. Le texte est encodé au format ASCII afin de pouvoir être lu par les programmes de recherche tels que Findstr et Grep. Par défaut, Out-File utilise le format Unicode.

La première commande obtient la liste des processus et les stocke dans la variable $a. La deuxième commande utilise l'applet de commande Out-File pour envoyer la liste au fichier Process.txt. 

La commande utilise le paramètre InputObject pour spécifier que l'entrée se trouve dans la variable $a. Elle utilise le paramètre Encoding pour convertir la sortie au format ASCII. Elle utilise le paramètre Width pour limiter chaque ligne du fichier à 50 caractères. Dans la mesure où les lignes de sortie sont tronquées après 50 caractères, la colonne de droite dans la table de processus est omise.






Exemple 4

C:\PS>set-location hklm:\software

c:\PS>get-acl mycompany\mykey | out-file -filepath c:\ps\acl.txt

c:\PS>get-acl mycompany\mykey | out-file -filepath filesystem::acl.txt

Description
-----------
Ces commandes montrent comment utiliser l'applet de commande Out-File lorsque vous n'êtes pas sur un lecteur FileSystem. 

La première commande définit l'emplacement actuel à la clé de Registre HKLM:\Software.

Les deuxième et troisième commandes ont le même effet. Elles utilisent l'applet de commande Get-Acl pour obtenir le descripteur de sécurité de la sous-clé de Registre MyKey (HKLM\Software\MyCompany\MyKey). Un opérateur de pipeline passe le résultat à l'applet de commande Out-File, qui l'envoie au fichier Acl.txt.

Dans la mesure où l'applet de commande Out-File n'est pas prise en charge par le fournisseur Registry de Windows PowerShell, vous devez spécifier soit le nom de lecteur du système de fichiers, tel que « c: », soit le nom du fournisseur suivi de deux signes deux-points, « FileSystem:: », dans la valeur du paramètre FilePath. Les deuxième et troisième commandes illustrent ces méthodes.






Voir aussi




Table des matières