Out-File
Envoie la sortie vers un fichier.
Syntax
Out-File
[-FilePath] <string>
[[-Encoding] <string>]
[-Append]
[-Force]
[-NoClobber]
[-Width <int>]
[-NoNewline]
[-InputObject <psobject>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Out-File
[[-Encoding] <string>]
-LiteralPath <string>
[-Append]
[-Force]
[-NoClobber]
[-Width <int>]
[-NoNewline]
[-InputObject <psobject>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
L’applet Out-File
de commande envoie la sortie à un fichier. Lorsque vous devez spécifier des paramètres pour la sortie, utilisez Out-File
plutôt que l’opérateur de redirection (>
).
Exemples
Exemple 1 : Envoyer une sortie et créer un fichier
Cet exemple montre comment envoyer une liste des processus de l’ordinateur local à un fichier. Si le fichier n’existe pas, Out-File
crée le fichier dans le chemin spécifié.
Get-Process | Out-File -FilePath .\Process.txt
Get-Content -Path .\Process.txt
NPM(K) PM(M) WS(M) CPU(s) Id SI ProcessName
------ ----- ----- ------ -- -- -----------
29 22.39 35.40 10.98 42764 9 Application
53 99.04 113.96 0.00 32664 0 CcmExec
27 96.62 112.43 113.00 17720 9 Code
L’applet Get-Process
de commande obtient la liste des processus en cours d’exécution sur l’ordinateur local. Les objets Process sont envoyés dans le pipeline à l’applet de Out-File
commande. Out-File
utilise le paramètre FilePath et crée un fichier dans le répertoire actif nommé Process.txt. La Get-Content
commande obtient le contenu du fichier et l’affiche dans la console PowerShell.
Exemple 2 : Empêcher le remplacement d’un fichier existant
Cet exemple empêche le remplacement d’un fichier existant. Par défaut, Out-File
remplace les fichiers existants.
Get-Process | Out-File -FilePath .\Process.txt -NoClobber
Out-File : The file 'C:\Test\Process.txt' already exists.
At line:1 char:15
+ Get-Process | Out-File -FilePath .\Process.txt -NoClobber
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
L’applet Get-Process
de commande obtient la liste des processus en cours d’exécution sur l’ordinateur local. Les objets Process sont envoyés dans le pipeline à l’applet de Out-File
commande. Out-File
utilise le paramètre FilePath et tente d’écrire dans un fichier dans le répertoire actif nommé Process.txt. Le paramètre NoClobber empêche le remplacement du fichier et affiche un message indiquant que le fichier existe déjà.
Exemple 3 : Envoyer une sortie à un fichier au format ASCII
Cet exemple montre comment encoder la sortie avec un type d’encodage spécifique.
$Procs = Get-Process
Out-File -FilePath .\Process.txt -InputObject $Procs -Encoding ASCII -Width 50
L’applet Get-Process
de commande obtient la liste des processus en cours d’exécution sur l’ordinateur local. Les objets Process sont stockés dans la variable , $Procs
. Out-File
utilise le paramètre FilePath et crée un fichier dans le répertoire actif nommé Process.txt. Le paramètre InputObject transmet les objets de processus dans $Procs
au fichier Process.txt. Le paramètre Encodage convertit la sortie au format ASCII . Le paramètre Width limite chaque ligne du fichier à 50 caractères afin que certaines données puissent être tronquées.
Exemple 4 : Utiliser un fournisseur et envoyer une sortie à un fichier
Cet exemple montre comment utiliser l’applet de Out-File
commande lorsque vous n’êtes pas dans un lecteur de fournisseur FileSystem . Utilisez l’applet de Get-PSProvider
commande pour afficher les fournisseurs sur votre ordinateur local. Pour plus d'informations, consultez about_Providers.
PS> Set-Location -Path Alias:
PS> Get-Location
Path
----
Alias:\
PS> Get-ChildItem | Out-File -FilePath C:\TestDir\AliasNames.txt
PS> Get-Content -Path C:\TestDir\AliasNames.txt
CommandType Name
----------- ----
Alias % -> ForEach-Object
Alias ? -> Where-Object
Alias ac -> Add-Content
Alias cat -> Get-Content
La Set-Location
commande utilise le paramètre Path pour définir l’emplacement actuel sur le fournisseur Alias:
de Registre . L’applet Get-Location
de commande affiche le chemin d’accès complet pour Alias:
.
Get-ChildItem
envoie des objets dans le pipeline à l’applet de Out-File
commande. Out-File
utilise le paramètre FilePath pour spécifier le chemin d’accès complet et le nom de fichier de la sortie, C:\TestDir\AliasNames.txt. L’applet Get-Content
de commande utilise le paramètre Path et affiche le contenu du fichier dans la console PowerShell.
Paramètres
-Append
Ajoute la sortie à la fin d’un fichier existant. Si aucun encodage n’est spécifié, l’applet de commande utilise l’encodage par défaut. Cet encodage peut ne pas correspondre à l’encodage du fichier cible. Il s’agit du même comportement que l’opérateur de redirection (>>
).
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Vous demande une confirmation avant d’exécuter l’applet de commande.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Encoding
Spécifie le type de codage du fichier cible. La valeur par défaut est Unicode.
Les valeurs acceptables pour ce paramètre sont les suivantes :
- ASCII Utilise un jeu de caractères ASCII (7 bits).
- BigEndianUnicode Utilise UTF-16 avec l’ordre d’octets big-endian.
- Par défaut Utilise l’encodage qui correspond à la page de code active du système (généralement ANSI).
- OEM Utilise l’encodage qui correspond à la page de code OEM actuelle du système.
- String Identique à Unicode.
- Unicode Utilise UTF-16 avec l’ordre d’octets little endian.
- Inconnu Identique à Unicode.
- UTF7 Utilise UTF-7.
- UTF8 Utilise UTF-8.
- UTF32 Utilise UTF-32 avec l’ordre d’octets little endian.
Type: | String |
Accepted values: | ASCII, BigEndianUnicode, Default, OEM, String, Unicode, Unknown, UTF7, UTF8, UTF32 |
Position: | 1 |
Default value: | Unicode |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FilePath
Spécifie le chemin d'accès au fichier de sortie.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Remplace l’attribut en lecture seule et remplace un fichier en lecture seule existant. Le paramètre Force ne remplace pas les restrictions de sécurité.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Spécifie les objets à écrire dans le fichier. Entrez une variable contenant les objets, ou tapez une commande ou une expression qui les obtient.
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-LiteralPath
Spécifie le chemin d'accès au fichier de sortie. Le paramètre LiteralPath est utilisé exactement comme il est tapé. Les caractères génériques ne sont pas acceptés. Si le chemin d’accès inclut des caractères d’échappement, mettez-le entre des guillemets simples. Les guillemets simples indiquent à PowerShell de ne pas interpréter de caractères comme des séquences d’échappement. Pour plus d’informations, consultez about_Quoting_Rules.
Type: | String |
Aliases: | PSPath |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-NoClobber
NoClobber empêche un fichier existant d’être remplacé et affiche un message indiquant que le fichier existe déjà. Par défaut, si un fichier existe dans le chemin spécifié, Out-File
remplace le fichier sans avertissement.
Type: | SwitchParameter |
Aliases: | NoOverwrite |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoNewline
Spécifie que le contenu écrit dans le fichier ne se termine pas par un caractère de nouvelle ligne. Les représentations sous forme de chaîne des objets d’entrée sont concaténées pour former la sortie. Aucun espace ou nouvelle ligne n’est inséré entre les chaînes de sortie. Aucune nouvelle ligne n’est ajoutée après la dernière chaîne de sortie.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Montre ce qui se passe en cas d’exécution de l’applet de commande. L’applet de commande n’est pas exécutée.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Width
Spécifie le nombre de caractères dans chaque ligne de la sortie. Tous les caractères supplémentaires sont tronqués, pas renvoyés à la ligne. Si ce paramètre n’est pas utilisé, la largeur est déterminée par les caractéristiques de l’hôte. La valeur par défaut de la console PowerShell est de 80 caractères.
Type: | Int |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Entrées
Vous pouvez diriger n’importe quel objet vers Out-File
.
Sorties
None
Out-File
ne génère aucune sortie.
Notes
Les Out
applets de commande ne mettent pas en forme les objets ; elles se contentent de les restituer et de les envoyer à la destination d’affichage spécifiée. Si vous envoyez un objet non mis en forme à une applet de Out
commande, l’applet de commande l’envoie à une applet de commande de mise en forme avant de le rendre.
Pour envoyer la sortie d’une commande PowerShell à l’applet de Out-File
commande, utilisez le pipeline. Vous pouvez stocker des données dans une variable et utiliser le paramètre InputObject pour passer des données à l’applet de Out-File
commande.
Out-File
envoie des données, mais il ne produit aucun objet de sortie. Si vous dirigez la sortie de vers Get-Member
, l’applet Get-Member
de Out-File
commande signale qu’aucun objet n’a été spécifié.