Add-Content
Fügt den angegebenen Elementen Inhalt hinzu, z. B. Hinzufügen von Wörtern in einer Datei.
Syntax
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>]
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>]
Beschreibung
Das Add-Content
Cmdlet fügt Inhalt an ein angegebenes Element oder eine angegebene Datei an. Sie können den Inhalt angeben, indem Sie den Inhalt im Befehl eingeben oder ein Objekt angeben, das den Inhalt enthält.
Wenn Sie Dateien oder Verzeichnisse für die folgenden Beispiele erstellen müssen, lesen Sie New-Item.
Beispiele
Beispiel 1: Hinzufügen einer Zeichenfolge zu allen Textdateien mit einer Ausnahme
In diesem Beispiel wird an Textdateien im aktuellen Verzeichnis ein Wert angefügt, dateien werden jedoch basierend auf ihrem Dateinamen ausgeschlossen.
Add-Content -Path .\*.txt -Exclude help* -Value 'End of file'
Das Add-Content
Cmdlet verwendet den Path-Parameter , um alle .txt Dateien im aktuellen Verzeichnis anzugeben. Der Exclude-Parameter ignoriert Dateinamen, die dem angegebenen Muster entsprechen. Der Value-Parameter gibt die Textzeichenfolge an, die in die Dateien geschrieben wird.
Verwenden Sie Get-Content , um den Inhalt dieser Dateien anzuzeigen.
Beispiel 2: Hinzufügen eines Datums am Ende der angegebenen Dateien
In diesem Beispiel wird das Datum an Dateien im aktuellen Verzeichnis angefügt und das Datum in der PowerShell-Konsole angezeigt.
Add-Content -Path .\DateTimeFile1.log, .\DateTimeFile2.log -Value (Get-Date) -PassThru
Get-Content -Path .\DateTimeFile1.log
Das Add-Content
Cmdlet verwendet die Parameter Path und Value , um zwei neue Dateien im aktuellen Verzeichnis zu erstellen. Der Value-Parameter gibt das Get-Date
Cmdlet an, um das Datum abzurufen, und übergibt das Datum an Add-Content
. Das Add-Content
Cmdlet schreibt das Datum in jede Datei. Der PassThru-Parameter übergibt ein -Objekt, das das date-Objekt darstellt. Da kein anderes Cmdlet zum Empfangen des übergebenen Objekts vorhanden ist, wird es in der PowerShell-Konsole angezeigt. Das Get-Content
Cmdlet zeigt die aktualisierte Datei DateTimeFile1.log an.
Beispiel 3: Hinzufügen des Inhalts einer angegebenen Datei zu einer anderen Datei
In diesem Beispiel wird der Inhalt aus einer Datei abgerufen und an eine andere Datei angefügt.
Add-Content -Path .\CopyToFile.txt -Value (Get-Content -Path .\CopyFromFile.txt)
Get-Content -Path .\CopyToFile.txt
Das Add-Content
Cmdlet verwendet den Parameter Path , um die neue Datei im aktuellen Verzeichnis anzugeben, CopyToFile.txt. Der Value-Parameter verwendet das Get-Content
Cmdlet, um den Inhalt der Datei abzurufen, CopyFromFile.txt. Die Klammern um das Get-Content
Cmdlet stellen sicher, dass der Befehl abgeschlossen wird, bevor der Add-Content
Befehl beginnt. Der Value-Parameter wird an Add-Content
übergeben. Das Add-Content
Cmdlet fügt die Daten an die CopyToFile.txt-Datei an. Das Get-Content
Cmdlet zeigt die aktualisierte Datei CopyToFile.txt an.
Beispiel 4: Verwenden einer Variablen zum Hinzufügen des Inhalts einer angegebenen Datei zu einer anderen Datei
In diesem Beispiel wird der Inhalt aus einer Datei abgerufen und der Inhalt in einer Variablen gespeichert. Die Variable wird verwendet, um den Inhalt an eine andere Datei anzufügen.
$From = Get-Content -Path .\CopyFromFile.txt
Add-Content -Path .\CopyToFile.txt -Value $From
Get-Content -Path .\CopyToFile.txt
Das Get-Content
Cmdlet ruft den Inhalt von CopyFromFile.txt ab und speichert den Inhalt in der $From
Variablen. Das Add-Content
Cmdlet verwendet den Path-Parameter , um die CopyToFile.txt Datei im aktuellen Verzeichnis anzugeben. Der Value-Parameter verwendet die $From
Variable und übergibt den Inhalt an Add-Content
. Das Add-Content
Cmdlet aktualisiert die datei CopyToFile.txt. Das Get-Content
Cmdlet zeigt CopyToFile.txt an.
Beispiel 5: Create einer neuen Datei und Kopieren von Inhalten
In diesem Beispiel wird eine neue Datei erstellt und der Inhalt einer vorhandenen Datei in die neue Datei kopiert.
Add-Content -Path .\NewFile.txt -Value (Get-Content -Path .\CopyFromFile.txt)
Get-Content -Path .\NewFile.txt
Das Add-Content
Cmdlet verwendet die Parameter Path und Value , um eine neue Datei im aktuellen Verzeichnis zu erstellen. Der Value-Parameter verwendet das Get-Content
Cmdlet, um den Inhalt einer vorhandenen Datei abzurufen, CopyFromFile.txt. Die Klammern um das Get-Content
Cmdlet stellen sicher, dass der Befehl abgeschlossen wird, bevor der Add-Content
Befehl beginnt. Der Value-Parameter übergibt den Inhalt, an Add-Content
den die NewFile.txt Datei aktualisiert wird. Das Get-Content
Cmdlet zeigt den Inhalt der neuen Datei NewFile.txt an.
Beispiel 6: Hinzufügen von Inhalten zu einer schreibgeschützten Datei
Dieser Befehl fügt den Wert der Datei hinzu, auch wenn das Dateiattribut IsReadOnly auf True festgelegt ist. Die Schritte zum Erstellen einer schreibgeschützten Datei sind im Beispiel enthalten.
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
Das New-Item
Cmdlet verwendet die Parameter Path und ItemType , um die Datei IsReadOnlyTextFile.txt im aktuellen Verzeichnis zu erstellen. Das Set-ItemProperty
Cmdlet verwendet die Parameter Name und Value , um die IsReadOnly-Eigenschaft der Datei in True zu ändern. Das Get-ChildItem
Cmdlet zeigt an, dass die Datei leer ist (0) und über das schreibgeschützte Attribut (r
) verfügt. Das Add-Content
Cmdlet verwendet den Path-Parameter , um die Datei anzugeben. Der Value-Parameter enthält die Textzeichenfolge, die an die Datei angefügt werden soll. Der Force-Parameter schreibt den Text in die schreibgeschützte Datei. Das Get-Content
Cmdlet verwendet den Path-Parameter , um den Inhalt der Datei anzuzeigen.
Um das schreibgeschützte Attribut zu entfernen, verwenden Sie den Set-ItemProperty
Befehl mit dem Wert-Parameter , der auf False
festgelegt ist.
Parameter
-Confirm
Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Gibt ein Benutzerkonto an, das über die Berechtigung zum Ausführen dieser Aktion verfügt. Der Standardwert ist der aktuelle Benutzer.
Geben Sie einen Benutzernamen ein, z. B . User01 oder Domain01\User01, oder geben Sie ein PSCredential-Objekt ein, z. B. ein vom Get-Credential
Cmdlet generiertes Objekt. Wenn Sie einen Benutzernamen eingeben, werden Sie zur Eingabe eines Kennworts aufgefordert.
Warnung
Dieser Parameter wird von keinem Anbieter unterstützt, der mit PowerShell installiert ist.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Encoding
Gibt den Typ der Codierung für die Zieldatei an. Der Standardwert lautet Default.
Die zulässigen Werte für diesen Parameter sind wie folgt:
- ASCII Verwendet ASCII (7-Bit)-Zeichensatz.
- BigEndianUnicode Verwendet UTF-16 mit der Big-Endian-Bytereihenfolge.
- BigEndianUTF32 Verwendet UTF-32 mit der Big-Endian-Bytereihenfolge.
- Byte Codiert einen Satz von Zeichen in eine Bytesequenz.
- Standard Verwendet die Codierung, die der aktiven Codepage des Systems (normalerweise ANSI) entspricht.
- OEM Verwendet die Codierung, die der aktuellen OEM-Codepage des Systems entspricht.
- Schnur Identisch mit Unicode.
- Unicode Verwendet UTF-16 mit der Little-Endian-Bytereihenfolge.
- Unbekannt Identisch mit Unicode.
- UTF7 Verwendet UTF-7.
- UTF8 Verwendet UTF-8.
- UTF32 Verwendet UTF-32 mit der Little-Endian-Bytereihenfolge.
Die Codierung ist ein dynamischer Parameter, den der FileSystem-Anbieter dem Add-Content
Cmdlet hinzufügt. Dieser Parameter funktioniert nur in Dateisystemlaufwerken.
Type: | FileSystemCmdletProviderEncoding |
Accepted values: | ASCII, BigEndianUnicode, BigEndianUTF32, Byte, Default, OEM, String, Unicode, Unknown, UTF7, UTF8, UTF32 |
Position: | Named |
Default value: | Default |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Exclude
Lässt die angegebenen Elemente aus. Der Wert dieses Parameters qualifiziert den Path-Parameter. Geben Sie ein Path-Element oder -Muster ein, z. B. *.txt. Platzhalter sind zulässig.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Filter
Gibt einen Filter im Format oder in der Sprache des Anbieters an. Der Wert dieses Parameters qualifiziert den Path-Parameter. Die Syntax des Filters einschließlich der Verwendung von Platzhaltern ist vom Anbieter abhängig. Filter sind effizienter als andere Parameter, da der Anbieter Filter anwendet, wenn Objekte abgerufen werden. Andernfalls verarbeitet PowerShell Filter, nachdem die Objekte abgerufen wurden.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Force
Überschreibt das Schreibschutzattribut, sodass Sie einer schreibgeschützten Datei Inhalt hinzufügen können. Beispielsweise überschreibt Force das Schreibschutzattribut oder erstellt Verzeichnisse zum Vervollständigen eines Dateipfads. Es wird jedoch nicht etwa versucht, Dateiberechtigungen zu ändern.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Include
Fügt nur die angegebenen Elemente hinzu. Der Wert dieses Parameters qualifiziert den Path-Parameter. Geben Sie ein Path-Element oder -Muster ein, z. B. *.txt. Platzhalter sind zulässig.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-LiteralPath
Gibt den Pfad zu den Elementen an, die den zusätzlichen Inhalt erhalten. Im Gegensatz zu Path wird der Wert von LiteralPath genau so verwendet, wie er eingegeben wurde. Es werden keine Zeichen als Platzhalter interpretiert. Wenn der Pfad Escapezeichen enthält, müssen Sie ihn in einfache Anführungszeichen einschließen. Einfache Anführungszeichen weisen PowerShell an, keine Zeichen als Escapesequenzen zu interpretieren.
Type: | String[] |
Aliases: | PSPath |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-NoNewline
Gibt an, dass dieses Cmdlet keine neue Zeile oder Wagenrücklauf zum Inhalt hinzufüge.
Die Zeichenfolgendarstellungen der Eingabeobjekte werden verkettet, um die Ausgabe zu bilden. Zwischen den Ausgabezeichenfolgen werden keine Leerzeichen oder Zeileneinbrüche eingefügt. Nach der letzten Ausgabezeichenfolge wird kein Zeilenumbruch hinzugefügt.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PassThru
Gibt ein Objekt zurück, das den hinzugefügten Inhalt darstellt. Standardmäßig wird von diesem Cmdlet keine Ausgabe generiert.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Gibt den Pfad zu den Elementen an, die den zusätzlichen Inhalt erhalten. Platzhalter sind zulässig. Wenn Sie mehrere Pfade angeben, trennen Sie diese durch Kommas.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Stream
Gibt einen alternativen Datenstrom für Den Inhalt an. Wenn der Stream nicht vorhanden ist, wird er von diesem Cmdlet erstellt. Platzhalterzeichen werden nicht unterstützt.
Stream ist ein dynamischer Parameter, den der FileSystem-Anbieter zu Add-Content
hinzufügt. Dieser Parameter funktioniert nur in Dateisystemlaufwerken.
Sie können das Add-Content
Cmdlet verwenden, um den Inhalt des alternativen Datenstroms Zone.Identifier zu ändern. Dies wird jedoch nicht empfohlen, um Sicherheitsüberprüfungen zu beseitigen, die Dateien blockieren, die aus dem Internet heruntergeladen werden. Wenn Sie überprüfen, ob eine heruntergeladene Datei sicher ist, verwenden Sie das Unblock-File
Cmdlet.
Dieser Parameter wurde in PowerShell 3.0 eingeführt.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseTransaction
Schließt den Befehl in die aktive Transaktion ein. Dieser Parameter ist nur gültig, wenn gerade eine Transaktion ausgeführt wird. Weitere Informationen finden Sie unter about_Transactions.
Type: | SwitchParameter |
Aliases: | usetx |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Value
Gibt den hinzuzufügenden Inhalt an. Geben Sie eine Zeichenfolge in Anführungszeichen ein, z. B. Diese Daten dienen nur zur internen Verwendung, oder geben Sie ein Objekt an, das Inhalt enthält, z. B. das dateTime-Objekt , das Get-Date
generiert.
Sie können den Inhalt einer Datei nicht angeben, indem Sie ihren Pfad eingeben, da der Pfad nur eine Zeichenfolge ist.
Sie können einen Get-Content
Befehl verwenden, um den Inhalt abzurufen und an den Value-Parameter zu übergeben.
Type: | Object[] |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Eingaben
System.Object, System.Management.Automation.PSCredential
Sie können Werte, Pfade oder Anmeldeinformationen an übergeben Set-Content
.
Ausgaben
None or System.String
Wenn Sie den PassThru-Parameter verwenden, Add-Content
wird ein System.String-Objekt generiert, das den Inhalt darstellt. Andernfalls wird von diesem Cmdlet keine Ausgabe generiert.
Hinweise
Wenn Sie ein Objekt an Add-Content
übergeben, wird das Objekt in eine Zeichenfolge konvertiert, bevor es dem Element hinzugefügt wird. Der Objekttyp bestimmt das Zeichenfolgenformat, das Format kann jedoch von der Standardanzeige des Objekts abweichen. Verwenden Sie die Formatierungsparameter des sendenden Cmdlets zum Steuern des Zeichenfolgenformats.
Sie können auch auf den Add-Content
integrierten Alias verweisen. ac
Weitere Informationen finden Sie unter about_Aliases.
Das Add-Content
Cmdlet ist für die Verwendung von Daten konzipiert, die von einem beliebigen Anbieter verfügbar gemacht werden. Geben Sie ein Get-PSProvider
, um die in Ihrer Sitzung verfügbaren Anbieter aufzulisten. Weitere Informationen finden Sie unter about_Providers.