Add-Content

Tartalmat ad hozzá a megadott elemekhez, például szavakat ad hozzá egy fájlhoz.

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

A Add-Content parancsmag hozzáfűzi a tartalmat egy adott elemhez vagy fájlhoz. A tartalom továbbítható a folyamatból, vagy az Érték paraméterrel adható meg.

Ha az alábbi példákhoz fájlokat vagy könyvtárakat kell létrehoznia, tekintse meg az Új elem című témakört.

Példák

1. példa: Sztring hozzáadása az összes szövegfájlhoz kivétellel

Ez a példa hozzáfűz egy értéket az aktuális könyvtár szövegfájljaihoz, de a fájlnév alapján kizárja a fájlokat.

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

Az Elérési út paraméter az aktuális könyvtárban lévő összes .txt fájlt megadja, a Kizárás paraméter azonban figyelmen kívül hagyja a megadott mintának megfelelő fájlneveket. Az Érték paraméter a fájlokba írt szöveges sztringet adja meg.

A Fájlok tartalmát a Get-Content használatával jelenítheti meg.

2. példa: Dátum hozzáadása a megadott fájlok végéhez

Ez a példa hozzáfűzi a dátumot az aktuális könyvtár fájljaihoz, és megjeleníti a dátumot a PowerShell-konzolon.

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

A Add-Content parancsmag két új fájlt hoz létre az aktuális könyvtárban. Az Érték paraméter a parancsmag kimenetét Get-Date tartalmazza. A PassThru paraméter a hozzáadott tartalmat adja ki a folyamathoz. Mivel nincs más parancsmag a kimenet fogadásához, az megjelenik a PowerShell-konzolon. A Get-Content parancsmag megjeleníti a frissített fájlt. DateTimeFile1.log

3. példa: Adott fájl tartalmának hozzáadása egy másik fájlhoz

Ez a példa lekéri a tartalmat egy fájlból, és egy változóban tárolja a tartalmat. A változó a tartalom egy másik fájlba való hozzáfűzésére szolgál.

$From = Get-Content -Path .\CopyFromFile.txt
Add-Content -Path .\CopyToFile.txt -Value $From
Get-Content -Path .\CopyToFile.txt
  • A Get-Content parancsmag lekéri a változó tartalmát CopyFromFile.txt , és tárolja azt $From .
  • A Add-Content parancsmag a CopyToFile.txt változó tartalmával frissíti a $From fájlt.
  • A Get-Content parancsmag CopyToFile.txt jelenít meg.

4. példa: Adott fájl tartalmának hozzáadása egy másik fájlhoz a folyamat használatával

Ez a példa lekéri a tartalmat egy fájlból, és a Add-Content parancsmagba csövezi.

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

A Get-Content parancsmag lekéri a tartalom.CopyFromFile.txt Az eredmények a Add-Content parancsmagra vannak állítva, amely frissíti a CopyToFile.txt. Az utolsó Get-Content parancsmag jelenik meg CopyToFile.txt.

5. példa: Új fájl létrehozása és tartalom másolása

Ez a példa létrehoz egy új fájlt, és átmásolja egy meglévő fájl tartalmát az új fájlba.

Add-Content -Path .\NewFile.txt -Value (Get-Content -Path .\CopyFromFile.txt)
Get-Content -Path .\NewFile.txt
  • A Add-Content parancsmag az Elérési út és érték paraméterekkel hoz létre egy új fájlt az aktuális könyvtárban.
  • A Get-Content parancsmag lekéri egy meglévő fájl tartalmát, CopyFromFile.txt és átadja az Érték paraméternek. A parancsmag körüli Get-Content zárójelek biztosítják, hogy a parancs a parancs megkezdése előtt Add-Content befejeződjön.
  • A Get-Content parancsmag megjeleníti az új fájl tartalmát. NewFile.txt

6. példa: Tartalom hozzáadása írásvédett fájlhoz

Ez a parancs akkor is hozzáad egy értéket a fájlhoz, ha az IsReadOnly fájlattribútum értéke Igaz. Az írásvédett fájlok létrehozásának lépéseit a példa tartalmazza.

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
  • A New-Item parancsmag az Elérési út és az ItemType paraméterek használatával hozza létre a fájlt IsReadOnlyTextFile.txt az aktuális könyvtárban.
  • A Set-ItemProperty parancsmag a Név és érték paraméterekkel módosítja a fájl IsReadOnly tulajdonságát Igaz értékre.
  • A Get-ChildItem parancsmag azt mutatja, hogy a fájl üres (0) és írásvédett attribútummal (r) rendelkezik.
  • A Add-Content parancsmag az Elérési út paramétert használja a fájl megadásához. Az Érték paraméter tartalmazza a fájlhoz hozzáfűzendő szövegsztringet. A Force paraméter a szöveget írásvédett fájlba írja.
  • A Get-Content parancsmag a Path paraméter használatával jeleníti meg a fájl tartalmát.

Az írásvédett attribútum eltávolításához használja a Set-ItemProperty parancsot az Érték paraméterrel False.

7. példa: Szűrők használata add-content használatával

A parancsmaghoz Add-Content szűrőt is megadhat. Ha szűrőkkel minősíti az Elérési út paramétert, egy záró csillagot (*) kell tartalmaznia az elérési út tartalmának jelzéséhez.

A következő parancs hozzáadja a "Kész" szót a könyvtárban lévő összes *.txt fájl tartalmához C:\Temp .

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

Paraméterek

-AsByteStream

Megadja, hogy a tartalmat bájtok adatfolyamaként kell olvasni. Ezt a paramétert a PowerShell 6.0-ban vezettük be.

Figyelmeztetés jelenik meg, ha az AsByteStream paramétert a Kódolás paraméterrel használja. Az AsByteStream paraméter figyelmen kívül hagy minden kódolást, és a kimenet bájtfolyamként lesz visszaadva.

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

-Confirm

Jóváhagyást kér a parancsmag futtatása előtt.

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

-Credential

Feljegyzés

Ezt a paramétert a PowerShell-lel telepített szolgáltatók nem támogatják. Ha megszemélyesíteni szeretne egy másik felhasználót, vagy a parancsmag futtatásakor emeli a hitelesítő adatait, használja az Invoke-Command parancsot.

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

-Encoding

Megadja a célfájl kódolási típusát. Az alapértelmezett érték utf8NoBOM.

A kódolás egy dinamikus paraméter, amelyet a FileSystem-szolgáltató hozzáad a Add-Content parancsmaghoz. Ez a paraméter csak fájlrendszer-meghajtókon működik.

A paraméter elfogadható értékei a következők:

  • ascii: Az ASCII (7 bites) karakterkészlet kódolását használja.
  • bigendianunicode: UTF-16 formátumban kódolja a big-endian bájtsorrendet.
  • bigendianutf32: UTF-32 formátumban kódolja a big-endian bájtsorrendet.
  • oem: Az MS-DOS és a konzolprogramok alapértelmezett kódolását használja.
  • unicode: UTF-16 formátumban kódolja a kis végű bájtsorrendet.
  • utf7: UTF-7 formátumban kódol.
  • utf8: UTF-8 formátumban kódol.
  • utf8BOM: UTF-8 formátumban kódol byte order mark (BOM)
  • utf8NoBOM: UTF-8 formátumban kódol byte order mark (BOM) nélkül
  • utf32: UTF-32 formátumban kódol.

A PowerShell 6.2-től kezdődően a Kódolás paraméter lehetővé teszi a regisztrált kódlapok (például -Encoding 1251) numerikus azonosítóit vagy a regisztrált kódlapok sztringneveit (például -Encoding "windows-1251"). További információt a Encoding.CodePage .NET-dokumentációjában talál.

Feljegyzés

Az UTF-7* már nem ajánlott. A PowerShell 7.1-ről figyelmeztetést ír, ha utf7 megadja a Kódolás paramétert.

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

Sztringtömbként olyan elemet vagy elemeket határoz meg, amelyeket ez a parancsmag kizár a műveletből. Ennek a paraméternek az értéke az Elérési út paramétert minősíti. Adjon meg egy elérési út elemet vagy mintát, például *.txt. A helyettesítő karakterek használata engedélyezett. A Kizárás paraméter csak akkor érvényes, ha a parancs egy elem tartalmát tartalmazza, például C:\Windows\*ha a helyettesítő karakter a könyvtár tartalmát C:\Windows adja meg.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Filter

Egy szűrőt ad meg, amely megfelel az Elérési út paraméternek. A Fájlrendszer-szolgáltató az egyetlen telepített PowerShell-szolgáltató, amely támogatja a szűrők használatát. A Fájlrendszer szűrőnyelvének szintaxisa about_Wildcards található. A szűrők hatékonyabbak, mint a többi paraméter, mivel a szolgáltató akkor alkalmazza őket, amikor a parancsmag lekéri az objektumokat, és nem azt, hogy a PowerShell szűrje az objektumokat a lekérés után.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Force

Felülbírálja az írásvédett attribútumot, így tartalmat adhat hozzá egy írásvédett fájlhoz. Kényszerítés például felülírja az írásvédett attribútumot, de nem módosítja a fájlengedélyeket.

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

-Include

Sztringtömbként egy elemet vagy elemet határoz meg, amelyet ez a parancsmag tartalmaz a műveletben. Ennek a paraméternek az értéke az Elérési út paramétert minősíti. Adjon meg egy elérési út elemet vagy mintát, például "*.txt". A helyettesítő karakterek használata engedélyezett. Az Include paraméter csak akkor érvényes, ha a parancs egy elem tartalmát tartalmazza, például C:\Windows\*amikor a helyettesítő karakter a könyvtár tartalmát C:\Windows adja meg.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-LiteralPath

Egy vagy több hely elérési útját adja meg. A LiteralPath értékét pontosan a beírt módon használja a rendszer. A rendszer egyetlen karaktert sem értelmez helyettesítő karakterként. Ha az elérési út tartalmaz escape karaktereket, csatolja egy idézőjelek közé. Az idézőjelek azt mondják a PowerShellnek, hogy ne értelmezzen karaktereket feloldósorozatként.

További információ: about_Quoting_Rules.

Type:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-NoNewline

Azt jelzi, hogy ez a parancsmag nem ad hozzá új sort vagy kocsit a tartalomhoz.

A bemeneti objektumok sztringreprezentációi összefűzve jelennek meg a kimenet létrehozásához. A kimeneti sztringek között nincsenek szóközök vagy új vonalak. Az utolsó kimeneti sztring után nincs új vonal hozzáadva.

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

-PassThru

A hozzáadott tartalmat képviselő objektumot ad vissza. Ez a parancsmag alapértelmezés szerint nem hoz létre kimenetet.

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

-Path

Megadja a további tartalmat fogadó elemek elérési útját. A helyettesítő karakterek használata engedélyezett. Az elérési utaknak nem tárolókhoz, hanem elemekhez vezető elérési utaknak kell lenniük. Például meg kell adnia egy vagy több fájl elérési útját, nem pedig egy könyvtár elérési útját. Ha több elérési utat ad meg, vesszővel válassza el egymástól az útvonalakat.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-Stream

Feljegyzés

Ez a paraméter csak Windows rendszeren érhető el.

Alternatív adatfolyamot ad meg a tartalomhoz. Ha a stream nem létezik, ez a parancsmag hozza létre. A helyettesítő karakterek nem támogatottak.

A Stream egy dinamikus paraméter, amelyet a Fájlrendszer-szolgáltató hozzáad Add-Content. Ez a paraméter csak fájlrendszer-meghajtókon működik.

A parancsmaggal Add-Content módosíthatja bármely alternatív adatfolyam tartalmát, például Zone.Identifier. Ezt azonban nem javasoljuk, hogy kiküszöbölje az internetről letöltött fájlokat letiltó biztonsági ellenőrzéseket. Ha ellenőrzi, hogy egy letöltött fájl biztonságos-e, használja a Unblock-File parancsmagot.

Ezt a paramétert a PowerShell 3.0-ban vezettük be. A PowerShell 7.2-ben Add-Content a fájlok és könyvtárak alternatív adatfolyamait is meg lehet célozni.

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

-Value

Megadja a hozzáadni kívánt tartalmat. Írjon be egy idézett sztringet, például ez az adat csak belső használatra szolgál, vagy adjon meg egy tartalmat tartalmazó objektumot, például a generált DateTime objektumot Get-Date .

A fájl tartalmát nem adhatja meg az elérési út beírásával, mert az elérési út csak egy sztring. Egy paranccsal lekérheti a tartalmat, és átadhatja Get-Content azt az Érték paraméternek.

Type:Object[]
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Bemutatja, mi történne a parancsmag futtatásakor. A parancsmag nem fut.

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

Bevitelek

Object

Az értékeket a gombra helyezheti Add-Content.

PSCredential

A hitelesítő adatokat a parancsra állíthatja Add-Contentbe.

Kimenetek

None

Ez a parancsmag alapértelmezés szerint nem ad vissza kimenetet.

String

A PassThru paraméter használatakor ez a parancsmag egy System.String objektumot ad vissza, amely a tartalmat jelöli.

Jegyzetek

A PowerShell a következő aliasokat Add-Contenttartalmazza:

  • Windows:

    • ac
  • Amikor egy objektumot az elemhez Add-Contentad, a rendszer sztringgé alakítja az objektumot, mielőtt hozzáadná az elemhez. Az objektumtípus határozza meg a sztring formátumát, de a formátum eltérhet az objektum alapértelmezett megjelenítésének formátumától. A sztringformátum szabályozásához használja a küldő parancsmag formázási paramétereit.

  • A Add-Content parancsmag úgy lett kialakítva, hogy bármely szolgáltató által közzétett adatokkal működjön együtt. A munkamenetben elérhető szolgáltatók listájához írja be a következőt Get-PSProvider: További információ: about_Providers.