Partager via


Add-Content

Ajoute du contenu aux éléments spécifiés, comme l’ajout de mots à un fichier.

Syntaxe

Path (Par défaut)

Add-Content
    [-Path] <string[]>
    [-Value] <Object[]>
    [-PassThru]
    [-Filter <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Force]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-UseTransaction]
    [-NoNewline]
    [-Encoding <FileSystemCmdletProviderEncoding>]
    [-Stream <string>]
    [<CommonParameters>]

LiteralPath

Add-Content
    [-Value] <Object[]>
    -LiteralPath <string[]>
    [-PassThru]
    [-Filter <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Force]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-UseTransaction]
    [-NoNewline]
    [-Encoding <FileSystemCmdletProviderEncoding>]
    [-Stream <string>]
    [<CommonParameters>]

Description

L’applet de commande Add-Content ajoute du contenu à un élément ou fichier spécifié. Le contenu peut être transmis à partir du pipeline ou spécifié à l’aide du paramètre Value.

Si vous devez créer des fichiers ou des répertoires pour les exemples suivants, consultez New-Item .

Exemples

Exemple 1 : Ajouter une chaîne à tous les fichiers texte avec une exception

Cet exemple ajoute une valeur aux fichiers texte dans le répertoire actif, mais exclut les fichiers en fonction de leur nom de fichier.

Add-Content -Path .\*.txt -Exclude help* -Value 'End of file'

Le paramètre Path spécifie tous les fichiers .txt dans le répertoire actif, mais le paramètre Exclure ignore les noms de fichiers qui correspondent au modèle spécifié. Le paramètre Value spécifie la chaîne de texte écrite dans les fichiers.

Utilisez Get-Content pour afficher le contenu de ces fichiers.

Exemple 2 : Ajouter une date à la fin des fichiers spécifiés

Cet exemple montre comment ajouter la date aux fichiers du répertoire actif et afficher la date dans la console PowerShell.

Add-Content -Path .\DateTimeFile1.log, .\DateTimeFile2.log -Value (Get-Date) -PassThru
Get-Content -Path .\DateTimeFile1.log
Tuesday, May 14, 2019 8:24:27 AM
Tuesday, May 14, 2019 8:24:27 AM
5/14/2019 8:24:27 AM

L’applet de commande Add-Content crée deux nouveaux fichiers dans le répertoire actif. Le paramètre Value contient la sortie de l’applet de commande Get-Date. Le paramètre PassThru envoie le contenu ajouté au pipeline. Étant donné qu’il n’existe aucune autre applet de commande pour recevoir la sortie, elle s’affiche dans la console PowerShell. L’applet de commande Get-Content affiche le fichier mis à jour, DateTimeFile1.log.

Exemple 3 : Ajouter le contenu d’un fichier spécifié à un autre fichier

Cet exemple obtient le contenu d’un fichier et stocke le contenu dans une variable. La variable est utilisée pour ajouter le contenu dans un autre fichier.

$From = Get-Content -Path .\CopyFromFile.txt
Add-Content -Path .\CopyToFile.txt -Value $From
Get-Content -Path .\CopyToFile.txt
  • L’applet de commande Get-Content obtient le contenu de CopyFromFile.txt et stocke le contenu dans la variable $From.
  • L’applet de commande Add-Content met à jour le fichier CopyToFile.txt à l’aide du contenu de la variable $From.
  • L’applet de commande Get-Content affiche CopyToFile.txt.

Exemple 4 : Ajouter le contenu d’un fichier spécifié à un autre fichier à l’aide du pipeline

Cet exemple obtient le contenu d’un fichier et le dirige vers l’applet de commande Add-Content.

Get-Content -Path .\CopyFromFile.txt | Add-Content -Path .\CopyToFile.txt
Get-Content -Path .\CopyToFile.txt

L’applet de commande Get-Content obtient le contenu de CopyFromFile.txt. Les résultats sont redirigés vers l’applet de commande Add-Content, qui met à jour le CopyToFile.txt. La dernière applet de commande Get-Content affiche CopyToFile.txt.

Exemple 5 : Créer un fichier et copier du contenu

Cet exemple crée un fichier et copie le contenu d’un fichier existant dans le nouveau fichier.

Add-Content -Path .\NewFile.txt -Value (Get-Content -Path .\CopyFromFile.txt)
Get-Content -Path .\NewFile.txt
  • L’applet de commande Add-Content utilise les paramètres chemin d’accès et valeur pour créer un fichier dans le répertoire actif.
  • L’applet de commande Get-Content obtient le contenu d’un fichier existant, CopyFromFile.txt et le transmet au paramètre Value. Les parenthèses autour de l’applet de commande Get-Content garantissent que la commande se termine avant le début de la commande Add-Content.
  • L’applet de commande Get-Content affiche le contenu du nouveau fichier, NewFile.txt.

Exemple 6 : Ajouter du contenu à un fichier en lecture seule

Cette commande ajoute une valeur au fichier même si l’attribut de fichier IsReadOnly est défini sur True. Les étapes de création d’un fichier en lecture seule sont incluses dans l’exemple.

New-Item -Path .\IsReadOnlyTextFile.txt -ItemType File
Set-ItemProperty -Path .\IsReadOnlyTextFile.txt -Name IsReadOnly -Value $true
Get-ChildItem -Path .\IsReadOnlyTextFile.txt
Add-Content -Path .\IsReadOnlyTextFile.txt -Value 'Add value to read-only text file' -Force
Get-Content -Path .\IsReadOnlyTextFile.txt
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-ar--         1/28/2019     13:35              0 IsReadOnlyTextFile.txt
  • L’applet de commande New-Item utilise les paramètres chemin d’accès et ItemType pour créer le fichier IsReadOnlyTextFile.txt dans le répertoire actif.
  • L’applet de commande Set-ItemProperty utilise les paramètres Name et Value pour modifier la propriété IsReadOnly du fichier en Vrai.
  • L’applet de commande Get-ChildItem indique que le fichier est vide (0) et a l’attribut en lecture seule (r).
  • L’applet de commande Add-Content utilise le paramètre Path pour spécifier le fichier. Le paramètre Valeur inclut la chaîne de texte à ajouter au fichier. Le paramètre Force écrit le texte dans le fichier en lecture seule.
  • L’applet de commande Get-Content utilise le paramètre Path pour afficher le contenu du fichier.

Pour supprimer l’attribut en lecture seule, utilisez la commande Set-ItemProperty avec le paramètre Valeur défini sur False.

Paramètres

-Confirm

Vous invite à confirmer avant d’exécuter l’applet de commande.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:False
Prend en charge les caractères génériques:False
DontShow:False
Alias:cf

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Credential

Remarque

Ce paramètre n’est pas pris en charge par les fournisseurs installés avec PowerShell. Pour emprunter l’identité d’un autre utilisateur ou élever vos informations d’identification lors de l’exécution de cette applet de commande, utilisez Invoke-Command.

Propriétés du paramètre

Type:PSCredential
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-Encoding

Spécifie le type d’encodage du fichier cible. La valeur par défaut est Default.

Les valeurs acceptables pour ce paramètre sont les suivantes :

  • Ascii utilise le jeu de caractères ASCII (7 bits).
  • BigEndianUnicode utilise UTF-16 avec l’ordre d’octet big-endian.
  • BigEndianUTF32 utilise UTF-32 avec l’ordre d’octet big-endian.
  • Byte encode un jeu de caractères en une séquence d’octets.
  • Default Utilise l’encodage qui correspond à la page de codes active du système (généralement ANSI).
  • Oem Utilise l’encodage qui correspond à la page de codes OEM actuelle du système.
  • String Identique à Unicode.
  • Unicode utilise UTF-16 avec l’ordre d’octet little-endian.
  • Unknown Identique à Unicode.
  • UTF7 utilise UTF-7.
  • UTF8 utilise UTF-8.
  • UTF32 utilise UTF-32 avec l’ordre d’octet little-endian.

L’encodage est un paramètre dynamique que le fournisseur FileSystem ajoute à l’applet de commande Add-Content. Ce paramètre fonctionne uniquement dans les lecteurs de système de fichiers.

Propriétés du paramètre

Type:FileSystemCmdletProviderEncoding
Valeur par défaut:Default
Valeurs acceptées:ASCII, BigEndianUnicode, BigEndianUTF32, Byte, Default, OEM, String, Unicode, Unknown, UTF7, UTF8, UTF32
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Exclude

Spécifie, en tant que tableau de chaînes, un élément ou des éléments que cette applet de commande exclut dans l’opération. La valeur de ce paramètre qualifie le paramètre Path. Entrez un élément de chemin ou un modèle, tel que *.txt. Les caractères génériques sont autorisés. Le paramètre Exclure est efficace uniquement lorsque la commande inclut le contenu d’un élément, tel que C:\Windows\*, où le caractère générique spécifie le contenu du répertoire C:\Windows.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:True
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Filter

Spécifie un filtre pour qualifier le paramètre Path. Le fournisseur FileSystem est le seul fournisseur PowerShell installé qui prend en charge l’utilisation de filtres. Vous pouvez trouver la syntaxe du langage de filtre FileSystem dans about_Wildcards. Les filtres sont plus efficaces que d’autres paramètres, car le fournisseur les applique lorsque l’applet de commande obtient les objets plutôt que d’avoir PowerShell filtrer les objets après leur récupération.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:True
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Force

Remplace l’attribut en lecture seule, ce qui vous permet d’ajouter du contenu à un fichier en lecture seule. Par exemple, Force outrepasse l’attribut en lecture seule, mais ne modifie pas les autorisations de fichier.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Include

Spécifie, sous la forme d’un tableau de chaînes, un élément ou des éléments inclus dans l’opération. La valeur de ce paramètre qualifie le paramètre Path. Entrez un élément de chemin ou un modèle, tel que "*.txt". Les caractères génériques sont autorisés. Le paramètre Include n’est effectif que lorsque la commande inclut le contenu d’un élément, tel que C:\Windows\*, où le caractère générique spécifie le contenu du répertoire C:\Windows.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:True
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-LiteralPath

Spécifie un chemin d’accès à un ou plusieurs emplacements. La valeur de LiteralPath est utilisée exactement comme elle est typée. Aucun caractère n’est interprété en tant que caractère générique. 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 séquences d’échappement.

Pour plus d'informations, consultez la section sur les règles de citation.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:PSPath

Jeux de paramètres

LiteralPath
Position:Named
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-NoNewline

Indique que cette cmdlet n'ajoute pas de nouvelle ligne ou de retour chariot au contenu.

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 caractères de sortie.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-PassThru

Retourne un objet représentant le contenu ajouté. Par défaut, cette applet de commande ne génère aucune sortie.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Path

Spécifie le chemin d’accès aux éléments qui reçoivent le contenu supplémentaire. Les caractères génériques sont autorisés. Les chemins d’accès doivent être des chemins d’accès aux éléments, et non aux conteneurs. Par exemple, vous devez spécifier un chemin d’accès à un ou plusieurs fichiers, et non un chemin d’accès à un répertoire. Si vous spécifiez plusieurs chemins, utilisez des virgules pour séparer les chemins.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:True
DontShow:False

Jeux de paramètres

Path
Position:0
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-Stream

Spécifie un autre flux de données pour le contenu. Si le flux n’existe pas, cette applet de commande la crée. Les caractères génériques ne sont pas pris en charge.

Stream est un paramètre dynamique que le fournisseur FileSystem ajoute à Add-Content. Ce paramètre fonctionne uniquement dans les lecteurs de système de fichiers.

Vous pouvez utiliser l’applet de commande Add-Content pour modifier le contenu d’un autre flux de données, tel que Zone.Identifier. Toutefois, nous vous déconseillons de procéder comme moyen d’éliminer les contrôles de sécurité qui bloquent les fichiers téléchargés à partir d’Internet. Si vous vérifiez qu’un fichier téléchargé est sécurisé, utilisez l’applet de commande Unblock-File.

Ce paramètre a été introduit dans PowerShell 3.0.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-UseTransaction

Inclut la commande dans la transaction active. Ce paramètre est valide uniquement lorsqu’une transaction est en cours. Pour plus d’informations, consultez about_Transactions.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:False
Prend en charge les caractères génériques:False
DontShow:False
Alias:usetx

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Value

Spécifie le contenu à ajouter. Tapez une chaîne entre guillemets, telle que Ces données sont destinées à une utilisation interne uniquement, ou spécifiez un objet qui contient du contenu, tel que l’objet DateTime généré par Get-Date.

Vous ne pouvez pas spécifier le contenu d’un fichier en tapant son chemin d’accès, car le chemin d’accès n’est qu’une chaîne. Vous pouvez utiliser une commande Get-Content pour obtenir le contenu et le transmettre au paramètre Valeur.

Propriétés du paramètre

Type:

Object[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:1
Obligatoire:True
Valeur du pipeline:True
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-WhatIf

Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande n’est pas exécutée.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:False
Prend en charge les caractères génériques:False
DontShow:False
Alias:Wi

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

CommonParameters

Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.

Entrées

Object

Vous pouvez diriger les valeurs vers Add-Content.

PSCredential

Vous pouvez acheminer les informations d’identification vers Add-Content.

Sorties

None

Par défaut, cette applet de commande ne retourne aucune sortie.

String

Lorsque vous utilisez le paramètre PassThru, cette applet de commande retourne un objet System.String représentant le contenu.

Notes

Windows PowerShell inclut les alias suivants pour Add-Content:

  • ac

  • Lorsque vous dirigez un objet vers Add-Content, l’objet est converti en chaîne avant d’être ajouté à l’élément. Le type d’objet détermine le format de chaîne, mais le format peut être différent de l’affichage par défaut de l’objet. Pour contrôler le format de chaîne, utilisez les paramètres de mise en forme de l’applet de commande d’envoi.

  • L’applet de commande Add-Content est conçue pour fonctionner avec les données exposées par n’importe quel fournisseur. Pour répertorier les fournisseurs disponibles dans votre session, tapez Get-PSProvider. Pour plus d’informations, voir about_Providers.