Add-Content
Hiermee voegt u inhoud toe aan de opgegeven items, zoals woorden toevoegen aan een bestand.
Syntax
Path (Standaard)
Add-Content
[-Path] <string[]>
[-Value] <Object[]>
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-NoNewline]
[-Encoding <Encoding>]
[-AsByteStream]
[-Stream <string>]
[<CommonParameters>]
LiteralPath
Add-Content
[-Value] <Object[]>
-LiteralPath <string[]>
[-PassThru]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-WhatIf]
[-Confirm]
[-NoNewline]
[-Encoding <Encoding>]
[-AsByteStream]
[-Stream <string>]
[<CommonParameters>]
Description
De Add-Content cmdlet voegt inhoud toe aan een opgegeven item of bestand. U kunt de inhoud opgeven door de inhoud in de opdracht te typen of door een object op te geven dat de inhoud bevat.
Zie New-Itemals u bestanden of mappen wilt maken voor de volgende voorbeelden.
Voorbeelden
Voorbeeld 1: Een tekenreeks toevoegen aan alle tekstbestanden met een uitzondering
In dit voorbeeld wordt een waarde toegevoegd aan tekstbestanden in de huidige map, maar worden bestanden uitgesloten op basis van hun bestandsnaam.
Add-Content -Path .\*.txt -Exclude help* -Value 'End of file'
De parameter Path geeft alle .txt bestanden in de huidige map op, maar de parameter Uitsluiten negeert bestandsnamen die overeenkomen met het opgegeven patroon. De parameter Waarde geeft de tekenreeks op die naar de bestanden wordt geschreven.
Gebruik Get-Content- om de inhoud van deze bestanden weer te geven.
Voorbeeld 2: Een datum toevoegen aan het einde van de opgegeven bestanden
In dit voorbeeld wordt de datum toegevoegd aan bestanden in de huidige map en wordt de datum weergegeven in de PowerShell-console.
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
De cmdlet Add-Content maakt twee nieuwe bestanden in de huidige map. De parameter Value bevat de uitvoer van de cmdlet Get-Date. De parameter PassThru voert de toegevoegde inhoud naar de pijplijn. Omdat er geen andere cmdlet is om de uitvoer te ontvangen, wordt deze weergegeven in de PowerShell-console. De cmdlet Get-Content geeft het bijgewerkte bestand weer, DateTimeFile1.log.
Voorbeeld 3: De inhoud van een opgegeven bestand toevoegen aan een ander bestand
In dit voorbeeld wordt de inhoud uit een bestand opgehaald en wordt de inhoud opgeslagen in een variabele. De variabele wordt gebruikt om de inhoud toe te voegen aan een ander bestand.
$From = Get-Content -Path .\CopyFromFile.txt
Add-Content -Path .\CopyToFile.txt -Value $From
Get-Content -Path .\CopyToFile.txt
- De cmdlet
Get-Contenthaalt de inhoud vanCopyFromFile.txtop en slaat de inhoud op in de variabele$From. - De
Add-Content-cmdlet werkt hetCopyToFile.txt-bestand bij met behulp van de inhoud van de variabele$From. - De cmdlet
Get-Contentgeeft CopyToFile.txtweer.
Voorbeeld 4: De inhoud van een opgegeven bestand toevoegen aan een ander bestand met behulp van de pijplijn
In dit voorbeeld wordt de inhoud opgehaald uit een bestand en doorgevoerd naar de Add-Content-cmdlet.
Get-Content -Path .\CopyFromFile.txt | Add-Content -Path .\CopyToFile.txt
Get-Content -Path .\CopyToFile.txt
De cmdlet Get-Content haalt de inhoud van CopyFromFile.txtop. De resultaten worden doorgesluisd naar de Add-Content-cmdlet, waarmee de CopyToFile.txtwordt bijgewerkt.
In de laatste Get-Content cmdlet wordt CopyToFile.txtweergegeven.
Voorbeeld 5: Een nieuw bestand maken en inhoud kopiëren
In dit voorbeeld wordt een nieuw bestand gemaakt en wordt de inhoud van een bestaand bestand gekopieerd naar het nieuwe bestand.
Add-Content -Path .\NewFile.txt -Value (Get-Content -Path .\CopyFromFile.txt)
Get-Content -Path .\NewFile.txt
- De cmdlet
Add-Contentmaakt gebruik van de parameters Path en Value om een nieuw bestand in de huidige map te maken. - Met de cmdlet
Get-Contentwordt de inhoud van een bestaand bestand opgehaald,CopyFromFile.txten doorgegeven aan de parameter Waarde. De haakjes rond deGet-Contentcmdlet zorgen ervoor dat de opdracht is voltooid voordat deAdd-Contentopdracht begint. - De cmdlet
Get-Contentgeeft de inhoud van het nieuwe bestand weer,NewFile.txt.
Voorbeeld 6: Inhoud toevoegen aan een bestand met het kenmerk Alleen-lezen
Met deze opdracht wordt een waarde aan het bestand toegevoegd, zelfs als het kenmerk IsReadOnly- is ingesteld op True. De stappen voor het maken van een alleen-lezenbestand worden opgenomen in het voorbeeld.
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
- De
New-Item-cmdlet gebruikt de parameters Path en ItemType om het bestand te makenIsReadOnlyTextFile.txtin de huidige map. - De cmdlet
Set-ItemPropertygebruikt de parameters Name en Value om de eigenschap IsReadOnly van het bestand te wijzigen in True. - De
Get-ChildItemcmdlet toont dat het bestand leeg is (0) en heeft het kenmerk Alleen-lezen (r). - De cmdlet
Add-Contentgebruikt de parameter Path om het bestand op te geven. De parameter Waarde bevat de tekenreeks die aan het bestand moet worden toegevoegd. De Force-parameter schrijft de tekst naar het alleen-lezen-bestand. - De cmdlet
Get-Contentmaakt gebruik van de parameter Path om de inhoud van het bestand weer te geven.
Als u het kenmerk Alleen-lezen wilt verwijderen, gebruikt u de opdracht Set-ItemProperty met de parameter Waarde ingesteld op False.
Voorbeeld 7: Filters gebruiken met Add-Content
U kunt een filter opgeven voor de Add-Content cmdlet. Wanneer u filters gebruikt om de parameter Pad te kwalificeren, moet u een sterretje aan het einde (*) opnemen om de inhoud van het pad aan te geven.
Met de volgende opdracht wordt het woord 'Gereed' toegevoegd aan de inhoud van alle *.txt bestanden in de map C:\Temp.
Add-Content -Path C:\Temp\* -Filter *.txt -Value "Done"
Parameters
-AsByteStream
Hiermee geeft u op dat de inhoud moet worden gelezen als een stroom van bytes. Deze parameter is geïntroduceerd in PowerShell 6.0.
Er treedt een waarschuwing op wanneer u de parameter AsByteStream gebruikt met de parameter encoding. De parameter AsByteStream negeert alle coderingen en de uitvoer wordt geretourneerd als een stroom bytes.
Parametereigenschappen
| Type: | SwitchParameter |
| Default value: | None |
| Ondersteunt jokertekens: | False |
| DontShow: | False |
Parametersets
(All)
| Position: | Named |
| Verplicht: | False |
| Waarde uit pijplijn: | False |
| Waarde uit pijplijn op eigenschapsnaam: | False |
| Waarde van resterende argumenten: | False |
-Confirm
Voordat u de cmdlet uitvoert, vraagt het systeem om bevestiging.
Parametereigenschappen
| Type: | SwitchParameter |
| Default value: | False |
| Ondersteunt jokertekens: | False |
| DontShow: | False |
| Aliassen: | Cf |
Parametersets
(All)
| Position: | Named |
| Verplicht: | False |
| Waarde uit pijplijn: | False |
| Waarde uit pijplijn op eigenschapsnaam: | False |
| Waarde van resterende argumenten: | False |
-Credential
Opmerking
Deze parameter wordt niet ondersteund door providers die zijn geïnstalleerd met PowerShell. Als u een andere gebruiker wilt imiteren of uw referenties wilt verhogen bij het uitvoeren van deze cmdlet, gebruikt u Invoke-Command-.
Parametereigenschappen
| Type: | PSCredential |
| Default value: | None |
| Ondersteunt jokertekens: | False |
| DontShow: | False |
Parametersets
(All)
| Position: | Named |
| Verplicht: | False |
| Waarde uit pijplijn: | False |
| Waarde uit pijplijn op eigenschapsnaam: | True |
| Waarde van resterende argumenten: | False |
-Encoding
Hiermee geeft u het type codering voor het doelbestand. De standaardwaarde is utf8NoBOM.
Encoding is een dynamische parameter die de FileSystem-provider toevoegt aan de cmdlet Add-Content. Deze parameter werkt alleen in bestandsysteemschijven.
De acceptabele waarden voor deze parameter zijn als volgt:
-
ascii: maakt gebruik van de codering voor de ASCII-tekenset (7-bits). -
bigendianunicode: Codeert in UTF-16-indeling met behulp van de bytevolgorde big-endian. -
bigendianutf32: Codeert in UTF-32-indeling met behulp van de bytevolgorde big-endian. -
oem: maakt gebruik van de standaardcodering voor MS-DOS- en consoleprogramma's. -
unicode: Encodeert in UTF-16-indeling met de little-endian-bytevolgorde. -
utf7: Codeert in UTF-7-formaat. -
utf8: Codeert in de UTF-8-indeling. -
utf8BOM: Codeert in UTF-8-formaat met Byte Order Mark (BOM) -
utf8NoBOM: Codeert in UTF-8-indeling zonder Byte Order Mark (BOM) -
utf32: Codeert in UTF-32-indeling.
Vanaf PowerShell 6.2 staat de parameter Coderings- ook numerieke id's toe van geregistreerde codepagina's (zoals -Encoding 1251) of tekenreeksnamen van geregistreerde codepagina's (zoals -Encoding "windows-1251"). Zie de .NET-documentatie voor Encoding.CodePagevoor meer informatie.
Opmerking
UTF-7* wordt niet meer aanbevolen om te gebruiken. Vanaf PowerShell 7.1 wordt een waarschuwing geschreven als u utf7 opgeeft voor de parameter codering.
Parametereigenschappen
| Type: | Encoding |
| Default value: | UTF8NoBOM |
| Geaccepteerde waarden: | ASCII, BigEndianUnicode, BigEndianUTF32, OEM, Unicode, UTF7, UTF8, UTF8BOM, UTF8NoBOM, UTF32 |
| Ondersteunt jokertekens: | False |
| DontShow: | False |
Parametersets
(All)
| Position: | Named |
| Verplicht: | False |
| Waarde uit pijplijn: | False |
| Waarde uit pijplijn op eigenschapsnaam: | False |
| Waarde van resterende argumenten: | False |
-Exclude
Hiermee specificeert u, als een tekenreeks, één of meerdere items die door deze cmdlet worden uitgesloten van de bewerking. De waarde van deze parameter komt in aanmerking voor de parameter Path. Voer een padelement of patroon in, zoals *.txt. Jokertekens zijn toegestaan. De parameter Uitsluiten is alleen van kracht wanneer de opdracht de inhoud van een item bevat, zoals C:\Windows\*, waarbij het jokerteken de inhoud van de C:\Windows map aangeeft.
Parametereigenschappen
| Type: | String[] |
| Default value: | None |
| Ondersteunt jokertekens: | True |
| DontShow: | False |
Parametersets
(All)
| Position: | Named |
| Verplicht: | False |
| Waarde uit pijplijn: | False |
| Waarde uit pijplijn op eigenschapsnaam: | False |
| Waarde van resterende argumenten: | False |
-Filter
Hiermee geeft u een filter op om de parameter Path te kwalificeren. De FileSystem-provider is de enige geïnstalleerde PowerShell-provider die het gebruik van filters ondersteunt. U kunt de syntaxis voor de FileSystem filtertaal vinden in about_Wildcards. Filters zijn efficiënter dan andere parameters, omdat de provider deze toepast wanneer de cmdlet de objecten ophaalt in plaats van PowerShell de objecten te filteren nadat ze zijn opgehaald.
Parametereigenschappen
| Type: | String |
| Default value: | None |
| Ondersteunt jokertekens: | True |
| DontShow: | False |
Parametersets
(All)
| Position: | Named |
| Verplicht: | False |
| Waarde uit pijplijn: | False |
| Waarde uit pijplijn op eigenschapsnaam: | False |
| Waarde van resterende argumenten: | False |
-Force
Overschrijft het kenmerk Alleen-lezen, zodat u inhoud aan een alleen-lezenbestand kunt toevoegen. Forceren overschrijft bijvoorbeeld het kenmerk alleen-lezen, maar wijzigt de bestandsmachtigingen niet.
Parametereigenschappen
| Type: | SwitchParameter |
| Default value: | None |
| Ondersteunt jokertekens: | False |
| DontShow: | False |
Parametersets
(All)
| Position: | Named |
| Verplicht: | False |
| Waarde uit pijplijn: | False |
| Waarde uit pijplijn op eigenschapsnaam: | False |
| Waarde van resterende argumenten: | False |
-Include
Hiermee specificeert u, in de vorm van een tekenreeksarray, een item of items die deze cmdlet bij de bewerking betrekt. De waarde van deze parameter komt in aanmerking voor de parameter Path. Voer een padelement of patroon in, zoals "*.txt". Jokertekens zijn toegestaan. De parameter Opnemen is alleen van kracht wanneer de opdracht de inhoud van een item bevat, zoals C:\Windows\*, waarbij het jokerteken de inhoud van de C:\Windows map aangeeft.
Parametereigenschappen
| Type: | String[] |
| Default value: | None |
| Ondersteunt jokertekens: | True |
| DontShow: | False |
Parametersets
(All)
| Position: | Named |
| Verplicht: | False |
| Waarde uit pijplijn: | False |
| Waarde uit pijplijn op eigenschapsnaam: | False |
| Waarde van resterende argumenten: | False |
-LiteralPath
Specificeert een pad naar een of meer locaties. De waarde van LiteralPath- wordt exact gebruikt zoals deze is getypt. Er worden geen tekens geïnterpreteerd als jokertekens. Als het pad escape-tekens bevat, zet het dan tussen enkele aanhalingstekens. Enkele aanhalingstekens zorgen ervoor dat PowerShell geen tekens als escapesequenties interpreteert.
Zie about_Quoting_Rulesvoor meer informatie.
Parametereigenschappen
| Type: | String[] |
| Default value: | None |
| Ondersteunt jokertekens: | False |
| DontShow: | False |
| Aliassen: | PSPath, LP |
Parametersets
LiteralPath
| Position: | Named |
| Verplicht: | True |
| Waarde uit pijplijn: | False |
| Waarde uit pijplijn op eigenschapsnaam: | True |
| Waarde van resterende argumenten: | False |
-NoNewline
Geeft aan dat deze cmdlet geen nieuwe regel of regelterugloop aan de inhoud toevoegt.
De tekenreeksweergaven van de invoerobjecten worden samengevoegd om de uitvoer te vormen. Er worden geen spaties of nieuwe regels ingevoegd tussen de uitvoertekenreeksen. Er wordt geen nieuwe regel toegevoegd na de laatste uitvoertekenreeks.
Parametereigenschappen
| Type: | SwitchParameter |
| Default value: | None |
| Ondersteunt jokertekens: | False |
| DontShow: | False |
Parametersets
(All)
| Position: | Named |
| Verplicht: | False |
| Waarde uit pijplijn: | False |
| Waarde uit pijplijn op eigenschapsnaam: | False |
| Waarde van resterende argumenten: | False |
-PassThru
Retourneert een object dat de toegevoegde inhoud vertegenwoordigt. Deze cmdlet genereert standaard geen uitvoer.
Parametereigenschappen
| Type: | SwitchParameter |
| Default value: | None |
| Ondersteunt jokertekens: | False |
| DontShow: | False |
Parametersets
(All)
| Position: | Named |
| Verplicht: | False |
| Waarde uit pijplijn: | False |
| Waarde uit pijplijn op eigenschapsnaam: | False |
| Waarde van resterende argumenten: | False |
-Path
Hiermee geeft u het pad naar de items die de aanvullende inhoud ontvangen. Jokertekens zijn toegestaan. De paden moeten paden naar items zijn, niet naar containers. U moet bijvoorbeeld een pad naar een of meer bestanden opgeven, niet een pad naar een map. Als u meerdere paden opgeeft, gebruikt u komma's om de paden te scheiden.
Parametereigenschappen
| Type: | String[] |
| Default value: | None |
| Ondersteunt jokertekens: | True |
| DontShow: | False |
Parametersets
Path
| Position: | 0 |
| Verplicht: | True |
| Waarde uit pijplijn: | False |
| Waarde uit pijplijn op eigenschapsnaam: | True |
| Waarde van resterende argumenten: | False |
-Stream
Opmerking
Deze parameter is alleen beschikbaar in Windows.
Hiermee geeft u een alternatieve gegevensstroom voor inhoud op. Als de stream niet bestaat, maakt deze cmdlet deze. Jokertekens worden niet ondersteund.
Stream is een dynamische parameter die de bestandssysteemprovider toevoegt aan Add-Content. Deze parameter werkt alleen in bestandsysteemschijven.
U kunt de cmdlet Add-Content gebruiken om de inhoud van een alternatieve gegevensstroom te wijzigen, zoals Zone.Identifier. We raden dit echter niet aan als een manier om beveiligingscontroles te voorkomen die bestanden blokkeren die van internet worden gedownload. Als u controleert of een gedownload bestand veilig is, gebruikt u de cmdlet Unblock-File.
Deze parameter is geïntroduceerd in PowerShell 3.0.
Parametereigenschappen
| Type: | String |
| Default value: | None |
| Ondersteunt jokertekens: | False |
| DontShow: | False |
Parametersets
(All)
| Position: | Named |
| Verplicht: | False |
| Waarde uit pijplijn: | False |
| Waarde uit pijplijn op eigenschapsnaam: | False |
| Waarde van resterende argumenten: | False |
-Value
Hiermee wordt de inhoud gespecificeerd die moet worden toegevoegd. Typ een tekenreeks tussen aanhalingstekens, zoals Deze gegevens zijn alleen voor intern gebruikof geef een object op dat inhoud bevat, zoals het DateTime--object dat Get-Date genereert.
U kunt de inhoud van een bestand niet opgeven door het pad te typen, omdat het pad slechts een tekenreeks is.
U kunt een Get-Content opdracht gebruiken om de inhoud op te halen en door te geven aan de parameter waarde.
Parametereigenschappen
| Type: | Object[] |
| Default value: | None |
| Ondersteunt jokertekens: | False |
| DontShow: | False |
Parametersets
(All)
| Position: | 1 |
| Verplicht: | True |
| Waarde uit pijplijn: | True |
| Waarde uit pijplijn op eigenschapsnaam: | True |
| Waarde van resterende argumenten: | False |
-WhatIf
Toont wat er zou gebeuren wanneer de cmdlet wordt uitgevoerd. De cmdlet wordt niet uitgevoerd.
Parametereigenschappen
| Type: | SwitchParameter |
| Default value: | False |
| Ondersteunt jokertekens: | False |
| DontShow: | False |
| Aliassen: | Wi |
Parametersets
(All)
| Position: | Named |
| Verplicht: | False |
| Waarde uit pijplijn: | False |
| Waarde uit pijplijn op eigenschapsnaam: | False |
| Waarde van resterende argumenten: | False |
CommonParameters
Deze cmdlet ondersteunt de algemene parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction en -WarningVariable. Zie about_CommonParametersvoor meer informatie.
Invoerwaarden
System.Object, System.Management.Automation.PSCredential
U kunt waarden, paden of referenties naar Set-Content.
Uitvoerwaarden
None or System.String
Wanneer u de parameter PassThru gebruikt, genereert Add-Content een System.String-object dat de inhoud vertegenwoordigt. Anders genereert deze cmdlet geen uitvoer.
Notities
- Wanneer u een object
Add-Contentnaar pipet, wordt het object geconverteerd naar een tekenreeks voordat het aan het item wordt toegevoegd. Het objecttype bepaalt de tekenreeksindeling, maar de indeling kan afwijken van de standaardweergave van het object. Als u de tekenreeksindeling wilt beheren, gebruikt u de opmaakparameters van de verzendende cmdlet. - U kunt ook verwijzen naar
Add-Contentdoor de ingebouwde alias,ac. Zie about_Aliasesvoor meer informatie. - De cmdlet
Add-Contentis ontworpen om te werken met de gegevens die door elke provider worden weergegeven. Als u de providers wilt weergeven die beschikbaar zijn in uw sessie, typt uGet-PSProvider. Zie about_Providersvoor meer informatie.