Add-Content
Přidá obsah do zadaných položek, například přidání slov do souboru.
Syntaxe
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>]
Description
Rutina Add-Content
připojí obsah k zadané položce nebo souboru. Obsah lze předat z kanálu nebo zadat pomocí parametru Value .
Pokud potřebujete vytvořit soubory nebo adresáře pro následující příklady, přečtěte si téma Nová položka.
Příklady
Příklad 1: Přidání řetězce do všech textových souborů s výjimkou
Tento příklad připojí hodnotu k textovým souborům v aktuálním adresáři, ale vyloučí soubory na základě jejich názvu.
Add-Content -Path .\*.txt -Exclude help* -Value 'End of file'
Parametr Cesta určuje všechny .txt
soubory v aktuálním adresáři, ale parametr Exclude ignoruje názvy souborů, které odpovídají zadanému vzoru. Parametr Value určuje textový řetězec, který je zapsán do souborů.
K zobrazení obsahu těchto souborů použijte funkci Get-Content .
Příklad 2: Přidání data na konec zadaných souborů
Tento příklad připojí datum k souborům v aktuálním adresáři a zobrazí datum v konzole PowerShellu.
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
Rutina Add-Content
vytvoří v aktuálním adresáři dva nové soubory. Parametr Value obsahuje výstup rutiny Get-Date
. Parametr PassThru vypíše přidaný obsah do kanálu. Vzhledem k tomu, že neexistuje žádná jiná rutina pro příjem výstupu, zobrazí se v konzole PowerShellu. Rutina Get-Content
zobrazí aktualizovaný soubor DateTimeFile1.log
.
Příklad 3: Přidání obsahu zadaného souboru do jiného souboru
Tento příklad získá obsah ze souboru a uloží obsah do proměnné. Proměnná se používá k připojení obsahu do jiného souboru.
$From = Get-Content -Path .\CopyFromFile.txt
Add-Content -Path .\CopyToFile.txt -Value $From
Get-Content -Path .\CopyToFile.txt
- Rutina
Get-Content
získá obsahCopyFromFile.txt
a uloží obsah do$From
proměnné. - Rutina
Add-Content
aktualizujeCopyToFile.txt
soubor pomocí obsahu$From
proměnné. - Rutina
Get-Content
zobrazí CopyToFile.txt.
Příklad 4: Přidání obsahu zadaného souboru do jiného souboru pomocí kanálu
Tento příklad získá obsah ze souboru a předá ho do rutiny Add-Content
.
Get-Content -Path .\CopyFromFile.txt | Add-Content -Path .\CopyToFile.txt
Get-Content -Path .\CopyToFile.txt
Rutina Get-Content
získá obsah .CopyFromFile.txt
Výsledky se předávají rutině Add-Content
, která aktualizuje CopyToFile.txt
.
Zobrazí se poslední Get-Content
rutina CopyToFile.txt
.
Příklad 5: Vytvoření nového souboru a zkopírování obsahu
Tento příklad vytvoří nový soubor a zkopíruje obsah existujícího souboru do nového souboru.
Add-Content -Path .\NewFile.txt -Value (Get-Content -Path .\CopyFromFile.txt)
Get-Content -Path .\NewFile.txt
- Rutina
Add-Content
používá parametry Path a Value k vytvoření nového souboru v aktuálním adresáři. - Rutina
Get-Content
získá obsah existujícího souboruCopyFromFile.txt
a předá ho parametru Value . Závorky kolemGet-Content
rutiny zajišťují, že se příkaz dokončí před zahájenímAdd-Content
příkazu. - Rutina
Get-Content
zobrazí obsah nového souboruNewFile.txt
.
Příklad 6: Přidání obsahu do souboru jen pro čtení
Tento příkaz přidá do souboru hodnotu, i když je atribut souboru IsReadOnly nastaven na Hodnotu True. Kroky k vytvoření souboru jen pro čtení jsou zahrnuty v příkladu.
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
- Rutina
New-Item
používá k vytvoření souboruIsReadOnlyTextFile.txt
v aktuálním adresáři parametry Path a ItemType. - Rutina
Set-ItemProperty
používá parametry Name a Value ke změně vlastnosti IsReadOnly souboru na True. - Rutina
Get-ChildItem
ukazuje, že soubor je prázdný (0
) a má atribut jen pro čtení (r
). - Rutina
Add-Content
k zadání souboru používá parametr Path . Parametr Value obsahuje textový řetězec, který se má připojit k souboru. Parametr Force zapíše text do souboru jen pro čtení. - Rutina
Get-Content
používá k zobrazení obsahu souboru parametr Path .
Chcete-li odebrat atribut jen pro čtení, použijte Set-ItemProperty
příkaz s parametrem Value nastaveným na False
.
Parametry
-Confirm
Před spuštěním rutiny zobrazí výzvu k potvrzení.
Typ: | SwitchParameter |
Aliasy: | cf |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Credential
Poznámka:
Tento parametr nejsou podporovány žádnými poskytovateli nainstalovanými v PowerShellu. Pokud chcete zosobnit jiného uživatele nebo zvýšit úroveň přihlašovacích údajů při spuštění této rutiny, použijte Invoke-Command.
Typ: | PSCredential |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Encoding
Určuje typ kódování cílového souboru. Výchozí hodnota je Default
.
Přijatelné hodnoty pro tento parametr jsou následující:
Ascii
Používá znakovou sadu ASCII (7bitová).BigEndianUnicode
Používá UTF-16 s pořadím velkých bajtů.BigEndianUTF32
Používá UTF-32 s pořadím velkých bajtů.Byte
Zakóduje sadu znaků do posloupnosti bajtů.Default
Používá kódování odpovídající aktivní znakové stránce systému (obvykle ANSI).Oem
Používá kódování odpovídající aktuální znakové stránce OEM systému.String
Stejné jako Unicode.Unicode
Používá UTF-16 s minimálním pořadím bajtů.Unknown
Stejné jako Unicode.UTF7
Používá UTF-7.UTF8
Používá UTF-8.UTF32
Používá UTF-32 s minimálním pořadím bajtů.
Kódování je dynamický parametr, který zprostředkovatel FileSystem přidává do rutiny Add-Content
. Tento parametr funguje jenom na jednotkách systému souborů.
Typ: | FileSystemCmdletProviderEncoding |
Přípustné hodnoty: | ASCII, BigEndianUnicode, BigEndianUTF32, Byte, Default, OEM, String, Unicode, Unknown, UTF7, UTF8, UTF32 |
Position: | Named |
Default value: | Default |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Exclude
Určuje, jako pole řetězců, položku nebo položky, které tato rutina vylučuje v operaci. Hodnota tohoto parametru kvalifikuje parametr Path . Zadejte element nebo vzor cesty, například *.txt
. Jsou povoleny zástupné znaky. Parametr Exclude je účinný pouze v případě, že příkaz obsahuje obsah položky, například C:\Windows\*
, kde zástupný znak určuje obsah C:\Windows
adresáře.
Typ: | String[] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-Filter
Určuje filtr, který má kvalifikovat parametr Path . Zprostředkovatel fileSystem je jediným nainstalovaným poskytovatelem PowerShellu, který podporuje použití filtrů. Syntaxi jazyka filtru FileSystem najdete v about_Wildcards. Filtry jsou efektivnější než jiné parametry, protože je poskytovatel použije, když rutina získá objekty místo toho, aby objekty po jejich načtení vyfiltrovala PowerShell.
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-Force
Přepíše atribut jen pro čtení, který umožňuje přidat obsah do souboru jen pro čtení. Vynucení například přepíše atribut jen pro čtení, ale nezmění oprávnění k souborům.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Include
Určuje, jako pole řetězců, položku nebo položky, které tato rutina zahrnuje v operaci. Hodnota tohoto parametru kvalifikuje parametr Path . Zadejte element nebo vzor cesty, například "*.txt"
. Jsou povoleny zástupné znaky. Parametr Include je efektivní pouze v případě, že příkaz obsahuje obsah položky, například C:\Windows\*
, kde zástupný znak určuje obsah C:\Windows
adresáře.
Typ: | String[] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-LiteralPath
Určuje cestu k jednomu nebo více umístěním. Hodnota LiteralPath se používá přesně tak, jak je zadána. Žádné znaky nejsou interpretovány jako zástupné znaky. Pokud cesta obsahuje řídicí znaky, uzavřete ji do jednoduchých uvozovek. Jednoduché uvozovky říkají PowerShellu, aby nepřekládaly žádné znaky jako řídicí sekvence.
Další informace najdete v tématu about_Quoting_Rules.
Typ: | String[] |
Aliasy: | PSPath |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-NoNewline
Označuje, že tato rutina nepřidá do obsahu nový řádek ani začátek řádku.
Řetězcové reprezentace vstupních objektů jsou zřetězeny tak, aby vytvořily výstup. Mezi výstupní řetězce se nevkládají žádné mezery ani nové čáry. Za poslední výstupní řetězec se nepřidá žádný nový řádek.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-PassThru
Vrátí objekt představující přidaný obsah. Ve výchozím nastavení tato rutina negeneruje žádný výstup.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Path
Určuje cestu k položkám, které přijímají další obsah. Jsou povoleny zástupné znaky. Cesty musí být cesty k položkám, nikoli ke kontejnerům. Musíte například zadat cestu k jednomu nebo více souborům, nikoli cestě k adresáři. Pokud zadáte více cest, oddělte cesty čárkami.
Typ: | String[] |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | True |
-Stream
Určuje alternativní datový proud pro obsah. Pokud stream neexistuje, tato rutina ho vytvoří. Zástupné znaky nejsou podporované.
Stream je dynamický parametr, ke kterému zprostředkovatel FileSystem přidává Add-Content
. Tento parametr funguje jenom na jednotkách systému souborů.
Pomocí této rutiny Add-Content
můžete změnit obsah libovolného alternativního datového proudu, například Zone.Identifier
. Nedoporučujeme to ale jako způsob, jak eliminovat kontroly zabezpečení, které blokují soubory stažené z internetu. Pokud ověříte, že stažený soubor je bezpečný, použijte tuto rutinu Unblock-File
.
Tento parametr byl představen v PowerShellu 3.0.
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-UseTransaction
Zahrnuje příkaz v aktivní transakci. Tento parametr je platný pouze v případě, že probíhá transakce. Další informace najdete v tématu about_Transactions.
Typ: | SwitchParameter |
Aliasy: | usetx |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Value
Určuje obsah, který se má přidat. Zadejte řetězec s uvozovou sadou, například Tato data, pouze pro interní použití, nebo zadejte objekt, který obsahuje obsah, například objekt DateTime , který Get-Date
generuje.
Obsah souboru nemůžete zadat zadáním jeho cesty, protože cesta je jen řetězec.
K získání obsahu a jeho předání do parametru Value můžete použít Get-Content
příkaz.
Typ: | Object[] |
Position: | 1 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-WhatIf
Zobrazuje, co by se stalo při spuštění rutiny. Rutina se nespustí.
Typ: | SwitchParameter |
Aliasy: | wi |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
Vstupy
Hodnoty můžete pipetovat do Add-Content
.
Přihlašovací údaje můžete vést na Add-Content
.
Výstupy
None
Ve výchozím nastavení tato rutina nevrací žádný výstup.
Pokud použijete parametr PassThru , vrátí tato rutina objekt System.String představující obsah.
Poznámky
Windows PowerShell obsahuje následující aliasy pro Add-Content
:
ac
Když předáte objekt
Add-Content
do objektu , objekt se před jeho přidáním do položky převede na řetězec. Typ objektu určuje formát řetězce, ale formát se může lišit od výchozího zobrazení objektu. K řízení formátu řetězce použijte parametry formátování odesílající rutiny.Rutina
Add-Content
je navržená tak, aby fungovala s daty vystavenými libovolným poskytovatelem. Pokud chcete zobrazit seznam poskytovatelů dostupných v relaci, zadejteGet-PSProvider
. Další informace najdete v tématu about_Providers.