Add-Content

: Microsoft.PowerShell.Management

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

Syntaxe

Add-Content <string> <Object> >] >] 
Add-Content <Object> -LiteralPath <string> >] >] 

Description

L’applet de commande Add-Content ajoute du contenu à un élément ou un fichier spécifié. Vous pouvez spécifier le contenu en tapant le contenu dans la commande ou en spécifiant un objet qui contient le contenu.

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 du répertoire courant 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 courant, mais Excludeparameter ignore les noms de fichiers qui correspondent au modèle spécifié. Le paramètre Value spécifie la chaîne textuelle qui est écrite dans les fichiers.

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

Cet exemple ajoute la date aux fichiers du répertoire courant et affiche la date dans la console PowerShell.

Add-Content -Path .\DateTimeFile1.log, .\DateTimeFile2.log -Value (Get-Date) -PassThruGet-Content -Path .\DateTimeFile1.logTuesday, May 14, 2019 8:24:27 AMTuesday, May 14, 2019 8:24:27 AM5/14/2019 8:24:27 AM

L’applet de commande Add-Content crée deux nouveaux fichiers dans le répertoire courant. Le paramètre Value contient la sortie de l’applet de commande Get-Date. Le paramètre PassThru envoie le contenu ajouté au pipeline.Comme il n’y a pas d’autre applet de commande pour recevoir la sortie, elle est affichée 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.txtAdd-Content -Path .\CopyToFile.txt -Value $FromGet-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 en utilisant le contenu de la variable $From.
  • L’applet de commande Get-Content affiche le CopyToFile.txt.

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

Cet exemple récupère le contenu d’un fichier et le dirige vers l’applet de commande Add-Content.

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

L’applet de commande Get-Content obtient le contenu de CopyFromFile.txt. Les résultats sont acheminé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 nouveau fichier et copier le contenu

Cet exemple crée un nouveau 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 de chemin et de valeur pour créer un nouveau fichier dans le répertoire actuel.
  • L’applet de commande Get-Content récupère 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 IsReadOnly file est défini sur True.Les étapes pour créer un fichier en lecture seule sont incluses dans l’exemple.

New-Item -Path .\IsReadOnlyTextFile.txt -ItemType FileSet-ItemProperty -Path .\IsReadOnlyTextFile.txt -Name IsReadOnly -Value $TrueGet-ChildItem -Path .\IsReadOnlyTextFile.txtAdd-Content -Path .\IsReadOnlyTextFile.txt -Value 'Add value to read-only text file' -ForceGet-Content -Path .\IsReadOnlyTextFile.txtMode LastWriteTime Length Name---- ------------- ------ -----ar-- 1/28/2019 13:35 0 IsReadOnlyTextFile.txt
  • L’applet de commande New-Item utilise les paramètres Path et ItemType pour créer le fichier IsReadOnlyTextFile.txt dans le répertoire courant.
  • L’applet de commande Set-ItemProperty utilise les paramètres Name et Value pour changer la propriété Isreadonly du fichier en True.
  • L’applet de commande Get-ChildItem indique que le fichier est vide (0) et possède 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 de valeur comprend la chaîne de texte à ajouter au fichier. Le paramètre Force écrit le texte dans le fichier uniquement lu.
  • 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 de valeur False.

Exemple 7 : Utiliser des filtres avec Add-Content

Vous pouvez spécifier un filtre à l’applet de commande Add-Content. Lorsque vous utilisez des filtres pour qualifier le paramètre de chemin, vous devez inclure un astérisque de fin (*) pour indiquer le contenu du chemin.

La commande suivante ajoute le mot « Terminé » le contenu de tous les fichiers *.txt dans le répertoire C:\Temp.

Add-Content -Path C:\Temp\* -Filter *.txt -Value "Done"

Paramètres

– AsByteStream

Spécifie que le contenu doit être lu comme un flux d’octets. Ce paramètre a été introduit dans PowerShell 6.0.

Un avertissement se produit lorsque vous utilisez le paramètre AsByteStream avec le paramètre Encoding. TheAsByteStream parameter ignores any encoding and the output is returned as a stream of bytes.

Type: SwitchParameter
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Confirm

Prompts you for confirmation before running the cmdlet.

Type: Paramètre de commutation
Alias: cf
Position: Nommé
Valeur par défaut: False
Accepter l’entrée du pipeline: False
Accepter caractères génériques : False
– Informations d’identification

Remarque

Ce paramètre n’est pris en charge par aucun fournisseur installé avec PowerShell.To usurpez l’identité d’un autre utilisateur ou élevez vos informations d’identification lors de l’exécution de cette applet de commande, utilisez Invoke-Command.

Type: PSCredential
Position: Named
Default value: None
Accept pipeline input: True
Accept wildcard characters: False
-Encoding

Specifies the type of encoding for the target file. The default value is utf8NoBOM.

Encoding is a dynamic parameter that the FileSystem provider adds to the Add-Content cmdlet. Ce paramètre ne fonctionne que dans les lecteurs du système de fichiers.

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

  • ascii : Utilise l’encodage du jeu de caractères ASCII (7 bits).
  • bigendianunicode: Code au format UTF-16 en utilisant l’ordre des octets big-endian.
  • bigendianutf32: Code au format UTF-32 en utilisant l’ordre des octets big-endian.
  • oem: Utilise l’encodage par défaut pour les programmes MS-DOS et console.
  • unicode: Encode au format UTF-16 en utilisant l’ordre des octets little-endian.
  • utf7: Code au format UTF-7.
  • utf8: Code au format UTF-8.
  • utf8BOM: Encode au format UTF-8 avec la Marque d’ordre des octets (BOM)
  • utf8NoBOM: Encode au format UTF-8 sans Marque d’ordre des octets (BOM)
  • utf32: Encode au format UTF-8 sans Marque d’ordre des octets (BOM)
  • utf32: Encode au format UTF-32.

Commençant par PowerShell 6.2, le paramètre Encoding autorise également les identifiants numériques des pages de code enregistrées (comme -Encoding 1251) ou les noms de chaînes des pages de code enregistrées (comme -Encoding "windows-1251"). Pour plus d’informations, consultez la documentation .NET forEncoding.Page de code.

Remarque

L’utilisation de UTF-7* n’est plus recommandée. Dans PowerShell 7.1, un avertissement est écrit si vous spécifiez utf7 pour le paramètre d’encodage.

Type: Encodage
Valeurs acceptées: ASCII, BigEndianUnicode, BigEndianUTF32, OEM, Unicode, UTF7, UTF8, UTF8BOM, UTF8NoBOM, UTF32
Position: Named
Default value: UTF8NoBOM
Accept pipeline input: False
Accept wildcard characters: False

-Exclude

Specifies, as a string array, an item or items that this cmdlet excludes in the operation. The valueof this parameter qualifies the Path parameter. Entrez un élément de chemin ou un motif, tel que *.txt. Les caractères génériques sont autorisés. Le paramètre Exclude n’est effectif que lorsque la commande inclut le contenu d’un élément, tel que C:\Windows\*, où les caractères génériques spécifient le contenu du répertoire C:\Windows.

Type: Chaîne
Position: Nommé
Valeur par défaut: Aucun
Accepter l’entrée du pipeline: False
Accepte les caractères génériques: True
– Filter

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

Type: Chaîne
Position: Nommé
Valeur par défaut: Aucun
Accepter l’entrée du pipeline: False
Accepter les caractères génériques: True
– Force

Remplace l’attribut en lecture seule, vous permettant d’ajouter du contenu à un fichier en lecture seule. Par exemple, Force remplacera l’attribut en lecture seule ou créera des répertoires pour compléter un chemin de fichier, mais il ne tentera pas de modifier les autorisations de fichier.

Type: Paramètre de commutation
Position: Nommé
Valeur par défaut: Aucun
Accepter l’entrée du pipeline: False
Accepter les caractères génériques: False
– Include

Spécifie, sous forme de tableau de chaînes, un ou plusieurs éléments que cette applet de commande inclut dans l’opération. La valeur de ce paramètre qualifie le paramètre Path. Entrez un élément de chemin ou un motif, 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ù les caractères génériques spécifient le contenu du répertoire C:\Windows.

Type: Chaîne
Position: Nommé
Valeur par défaut: Aucun
Accepter l’entrée du pipeline: False
Accepte les caractères génériques: True
– LiteralPath

Spécifie un chemin vers un ou plusieurs emplacements. La valeur de LiteralPath est utilisée exactement comme elle est typée. Aucun caractère n’est interprété comme des caractères génériques. Si le chemin comprend des caractères d’échappement, placez-le entre guillemets simples. Des 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: Chaîne
Alias: PSPath, LP
Position: Nommé
Valeur par défaut: Aucun
Accepter l’entrée du pipeline: True
Accepter les caractères génériques: False

– NoNewline

Indique que cette applet de commande n’ajoute pas de nouvelle ligne ou de retour chariot au contenu.

Les représentations de chaînes des objets d’entrée sont concaténées pour former la sortie. Aucun espace ni aucune ligne n’est insérée entre les chaînes de sortie. Aucune nouvelle ligne n’est ajoutée après la dernière chaîne de sortie.

Type: Paramètre de commutation
Position: Nommé
Valeur par défaut: Aucun
Accepter l’entrée du pipeline: False
Accepte les caractères génériques : False
– PassThru

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

Type: Paramètre de commutation
Position: Nommé
Valeur par défaut: Aucun
Accepter l’entrée du pipeline: False
Accepter les caractères génériques: 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 doivent être des chemins vers des éléments, pas vers des 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.

Type: Chaîne
Position: 0
Valeur par défaut: Aucun
Accepter l’entrée du pipeline: True
Accepte les caractères génériques : True
– Stream

Remarque

Ce paramètre n’est disponible que sous Windows.

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

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

Vous pouvez utiliser l’applet de commande Add-Content pour modifier le contenu de tout flux de données alternées, tel que Zone.Identifier. Cependant, nous ne recommandons pas cette méthode asa pour é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ûr, utilisez l’applet de commande Unblock-File.

This parameter was introduced in PowerShell 3.0.

Type: String
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Value

Specifies the content to be added. Tapez une chaîne entre guillemets, telle que Ces données ne sont destinées qu’à un usage interne, ou spécifiez un objet contenant 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, car le chemin n’est qu’une chaîne.Vous pouvez utiliser une commande Get-Content pour obtenir le contenu et le transmettre au paramètre Value.

Type: Objet
Position: 1
Valeur par défaut: Aucun
Accepter l’entrée du pipeline: True
Accept wildcard characters: False
-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Type: SwitchParameter
Aliases: wi
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False

Entrées

Système.Objet, Système.Gestion.Automatisation.PSCredential

Vous pouvez diriger des valeurs, des chemins ou des informations d’identification vers Set-Content.

Sorties

Aucun ou Système.String

Lorsque vous utilisez le paramètre PassThru, Add-Content génère un système.Objet chaîne quireprésente le contenu. Sinon, cette applet de commande ne génère aucune sortie.

Notes

  • 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 formatage de l’applet de commande de fin.
  • Vous pouvez également vous référer à Add-Content par son alias intégré, ac. Pour plus d’informations, voir About_aliases.
  • L’applet de commande Add-Content est conçue pour fonctionner avec les données exposées par n’importe quel fournisseur. Pour lister les fournisseurs disponibles dans votre session, tapez Get-PSProvider. Pour plus d’informations, voir About_providers.
  • about_Aliases
  • about_Providers
  • Clear-Content
  • Get-Content
  • Get-Item
  • New-Item
  • Set-Content

Related Posts

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *