Add-Content
Lägger till innehåll i de angivna objekten, till exempel att lägga till ord i en fil.
Syntax
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>]
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
Cmdleten Add-Content
lägger till innehåll i ett angivet objekt eller en fil. Innehåll kan skickas från pipelinen eller anges med hjälp av parametern Value .
Om du behöver skapa filer eller kataloger för följande exempel kan du läsa Nytt objekt.
Exempel
Exempel 1: Lägg till en sträng i alla textfiler med undantag
Det här exemplet lägger till ett värde i textfiler i den aktuella katalogen men exkluderar filer baserat på deras filnamn.
Add-Content -Path .\*.txt -Exclude help* -Value 'End of file'
Parametern Path anger alla .txt
filer i den aktuella katalogen, men parametern Exclude ignorerar filnamn som matchar det angivna mönstret. Parametern Value anger textsträngen som skrivs till filerna.
Använd Get-Content för att visa innehållet i dessa filer.
Exempel 2: Lägg till ett datum i slutet av de angivna filerna
I det här exemplet läggs datumet till i filer i den aktuella katalogen och datumet visas i PowerShell-konsolen.
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
Cmdleten Add-Content
skapar två nya filer i den aktuella katalogen. Parametern Value innehåller utdata från cmdleten Get-Date
. Parametern PassThru matar ut det tillagda innehållet i pipelinen. Eftersom det inte finns någon annan cmdlet att ta emot utdata visas den i PowerShell-konsolen. Cmdleten Get-Content
visar den uppdaterade filen, DateTimeFile1.log
.
Exempel 3: Lägg till innehållet i en angiven fil i en annan fil
Det här exemplet hämtar innehållet från en fil och lagrar innehållet i en variabel. Variabeln används för att lägga till innehållet i en annan fil.
$From = Get-Content -Path .\CopyFromFile.txt
Add-Content -Path .\CopyToFile.txt -Value $From
Get-Content -Path .\CopyToFile.txt
- Cmdleten
Get-Content
hämtar innehållet iCopyFromFile.txt
och lagrar innehållet i variabeln$From
. - Cmdleten
Add-Content
CopyToFile.txt
uppdaterar filen med hjälp av variabelns$From
innehåll. - Cmdleten
Get-Content
visar CopyToFile.txt.
Exempel 4: Lägg till innehållet i en angiven fil i en annan fil med pipelinen
Det här exemplet hämtar innehållet från en fil och skickar det till cmdleten Add-Content
.
Get-Content -Path .\CopyFromFile.txt | Add-Content -Path .\CopyToFile.txt
Get-Content -Path .\CopyToFile.txt
Cmdleten Get-Content
hämtar innehållet i CopyFromFile.txt
. Resultatet skickas till cmdleten Add-Content
som uppdaterar CopyToFile.txt
.
Den sista Get-Content
cmdleten visar CopyToFile.txt
.
Exempel 5: Skapa en ny fil och kopiera innehåll
Det här exemplet skapar en ny fil och kopierar en befintlig fils innehåll till den nya filen.
Add-Content -Path .\NewFile.txt -Value (Get-Content -Path .\CopyFromFile.txt)
Get-Content -Path .\NewFile.txt
- Cmdleten
Add-Content
använder parametrarna Path och Value för att skapa en ny fil i den aktuella katalogen. - Cmdleten
Get-Content
hämtar innehållet i en befintlig filCopyFromFile.txt
och skickar den till parametern Value . Parenteserna runt cmdletenGet-Content
ser till att kommandot slutförs innanAdd-Content
kommandot börjar. - Cmdleten
Get-Content
visar innehållet i den nya filen,NewFile.txt
.
Exempel 6: Lägga till innehåll i en skrivskyddad fil
Det här kommandot lägger till ett värde i filen även om filattributet IsReadOnly är inställt på True. Stegen för att skapa en skrivskyddad fil ingår i exemplet.
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
- Cmdleten
New-Item
använder parametrarna Path och ItemType för att skapa filenIsReadOnlyTextFile.txt
i den aktuella katalogen. - Cmdleten
Set-ItemProperty
använder parametrarna Name och Value för att ändra filens IsReadOnly-egenskap till True. - Cmdleten
Get-ChildItem
visar att filen är tom (0
) och har det skrivskyddade attributet (r
). - Cmdleten
Add-Content
använder parametern Path för att ange filen. Parametern Value innehåller textsträngen som ska läggas till i filen. Parametern Force skriver texten till den skrivskyddade filen. - Cmdleten
Get-Content
använder parametern Path för att visa filens innehåll.
Om du vill ta bort det skrivskyddade attributet använder Set-ItemProperty
du kommandot med parametern Value inställd på False
.
Exempel 7: Använd filter med Add-Content
Du kan ange ett filter för cmdleten Add-Content
. När du använder filter för att kvalificera parametern Path måste du inkludera en avslutande asterisk (*
) för att ange innehållet i sökvägen.
Följande kommando lägger till ordet "Klar" innehållet i alla *.txt
filer i C:\Temp
katalogen.
Add-Content -Path C:\Temp\* -Filter *.txt -Value "Done"
Parametrar
-AsByteStream
Anger att innehållet ska läsas som en ström med byte. Den här parametern introducerades i PowerShell 6.0.
En varning visas när du använder parametern AsByteStream med parametern Encoding . Parametern AsByteStream ignorerar all kodning och utdata returneras som en ström med byte.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Uppmanar dig att bekräfta innan du kör cmdleten.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Anteckning
Den här parametern stöds inte av leverantörer som är installerade med PowerShell. Om du vill personifiera en annan användare eller höja dina autentiseringsuppgifter när du kör den här cmdleten använder du Invoke-Command.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Encoding
Anger typ av kodning för målfilen. Standardvärdet är utf8NoBOM
.
Kodning är en dynamisk parameter som FileSystem-providern lägger till i cmdleten Add-Content
. Den här parametern fungerar bara på filsystemenheter.
Godkända värden för den här parametern är följande:
ascii
: Använder kodningen för ASCII-teckenuppsättningen (7-bitars).bigendianunicode
: Kodar i UTF-16-format med hjälp av den stora byteordningen.bigendianutf32
: Kodar i UTF-32-format med hjälp av den stora byteordningen.oem
: Använder standardkodning för MS-DOS och konsolprogram.unicode
: Kodar i UTF-16-format med den little-endianska byteordningen.utf7
: Kodar i UTF-7-format.utf8
: Kodar i UTF-8-format.utf8BOM
: Kodar i UTF-8-format med BOM (Byte Order Mark)utf8NoBOM
: Kodar i UTF-8-format utan bom (Byte Order Mark)utf32
: Kodar i UTF-32-format.
Från och med PowerShell 6.2 tillåter kodningsparametern även numeriska ID:er för registrerade kodsidor (till exempel -Encoding 1251
) eller strängnamn för registrerade kodsidor (till exempel -Encoding "windows-1251"
). Mer information finns i .NET-dokumentationen för Encoding.CodePage.
Anteckning
UTF-7* rekommenderas inte längre att använda. Från och med PowerShell 7.1 skrivs en varning om du anger utf7
för kodningsparametern .
Type: | Encoding |
Accepted values: | ASCII, BigEndianUnicode, BigEndianUTF32, OEM, Unicode, UTF7, UTF8, UTF8BOM, UTF8NoBOM, UTF32 |
Position: | Named |
Default value: | UTF8NoBOM |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Exclude
Anger, som en strängmatris, ett objekt eller objekt som denna cmdlet exkluderar i åtgärden. Värdet för den här parametern kvalificerar parametern Path . Ange ett sökvägselement eller mönster, till exempel *.txt
. Jokertecken tillåts. Parametern Exkludera gäller endast när kommandot innehåller innehållet i ett objekt, till exempel C:\Windows\*
, där jokertecknet anger innehållet i C:\Windows
katalogen.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Filter
Anger ett filter för att kvalificera parametern Path . FileSystem-providern är den enda installerade PowerShell-providern som stöder användning av filter. Du hittar syntaxen för filterspråket FileSystem i about_Wildcards. Filter är mer effektiva än andra parametrar, eftersom providern tillämpar dem när cmdleten hämtar objekten i stället för att Låta PowerShell filtrera objekten efter att de har hämtats.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Force
Åsidosätter det skrivskyddade attributet så att du kan lägga till innehåll i en skrivskyddad fil. Force åsidosätter till exempel det skrivskyddade attributet men ändrar inte filbehörigheter.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Include
Anger, som en strängmatris, ett objekt eller objekt som denna cmdlet innehåller i åtgärden. Värdet för den här parametern kvalificerar parametern Path . Ange ett sökvägselement eller mönster, till exempel "*.txt"
. Jokertecken tillåts. Parametern Include gäller endast när kommandot innehåller innehållet i ett objekt, till exempel C:\Windows\*
, där jokertecknet anger innehållet i C:\Windows
katalogen.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-LiteralPath
Anger en sökväg till en eller flera platser. Värdet för LiteralPath används exakt som det skrivs. Inga tecken tolkas som jokertecken. Om sökvägen innehåller escape-tecken omger du den med enkla citattecken. Enkla citattecken talar om för PowerShell att inga tecken ska tolkas som escape-sekvenser.
Mer information finns i about_Quoting_Rules.
Type: | String[] |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-NoNewline
Anger att denna cmdlet inte lägger till en ny rad eller vagnretur till innehållet.
Strängrepresentationerna av indataobjekten sammanfogas för att bilda utdata. Inga blanksteg eller nylinjer infogas mellan utdatasträngarna. Ingen ny rad läggs till efter den senaste utdatasträngen.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PassThru
Returnerar ett objekt som representerar det tillagda innehållet. Som standard genererar denna cmdlet inga utdata.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Anger sökvägen till de objekt som tar emot det ytterligare innehållet. Jokertecken tillåts. Sökvägarna måste vara sökvägar till objekt, inte till containrar. Du måste till exempel ange en sökväg till en eller flera filer, inte en sökväg till en katalog. Om du anger flera sökvägar använder du kommatecken för att avgränsa sökvägarna.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Stream
Anteckning
Den här parametern är endast tillgänglig i Windows.
Anger en alternativ dataström för innehåll. Om strömmen inte finns skapar den här cmdleten den. Jokertecken stöds inte.
Stream är en dynamisk parameter som FileSystem-providern lägger till i Add-Content
. Den här parametern fungerar bara på filsystemenheter.
Du kan använda cmdleten Add-Content
för att ändra innehållet i en alternativ dataström, till exempel Zone.Identifier
. Vi rekommenderar dock inte detta som ett sätt att eliminera säkerhetskontroller som blockerar filer som laddas ned från Internet. Om du kontrollerar att en nedladdad fil är säker använder du cmdleten Unblock-File
.
Den här parametern introducerades i PowerShell 3.0. Från och med PowerShell 7.2 Add-Content
kan du rikta alternativa dataströmmar på både filer och kataloger.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Value
Anger det innehåll som ska läggas till. Skriv en citerad sträng, till exempel Dessa data är endast för internt bruk, eller ange ett objekt som innehåller innehåll, till exempel DateTime-objektet som Get-Date
genererar.
Du kan inte ange innehållet i en fil genom att skriva dess sökväg, eftersom sökvägen bara är en sträng.
Du kan använda ett Get-Content
kommando för att hämta innehållet och skicka det till parametern Value .
Type: | Object[] |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Visar vad som skulle hända om cmdleten kördes. Cmdleten körs inte.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Indata
Du kan skicka värden till Add-Content
.
Du kan skicka autentiseringsuppgifter till Add-Content
.
Utdata
None
Som standard returnerar denna cmdlet inga utdata.
När du använder parametern PassThru returnerar den här cmdleten ett System.String-objekt som representerar innehållet.
Kommentarer
PowerShell innehåller följande alias för Add-Content
:
Windows:
ac
När du skickar ett objekt till
Add-Content
konverteras objektet till en sträng innan det läggs till i objektet. Objekttypen avgör strängformatet, men formatet kan skilja sig från standardvisningen av objektet. Om du vill styra strängformatet använder du formateringsparametrarna för den sändande cmdleten.Cmdleten
Add-Content
är utformad för att fungera med data som exponeras av alla leverantörer. Om du vill visa en lista över de providrar som är tillgängliga i sessionen skriver duGet-PSProvider
. Mer information finns i about_Providers.