Get-Content
Získá obsah položky v zadaném umístění.
Syntax
Path (Výchozí)
Get-Content
[-Path] <string[]>
[-ReadCount <long>]
[-TotalCount <long>]
[-Tail <int>]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-UseTransaction]
[-Delimiter <string>]
[-Wait]
[-Raw]
[-Encoding <FileSystemCmdletProviderEncoding>]
[-Stream <string>]
[<CommonParameters>]
LiteralPath
Get-Content
-LiteralPath <string[]>
[-ReadCount <long>]
[-TotalCount <long>]
[-Tail <int>]
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-UseTransaction]
[-Delimiter <string>]
[-Wait]
[-Raw]
[-Encoding <FileSystemCmdletProviderEncoding>]
[-Stream <string>]
[<CommonParameters>]
Description
Rutina Get-Content získá obsah položky v umístění určeném cestou, například text v souboru nebo obsah funkce. U souborů se obsah načítá po jednom řádku a vrací kolekci objektů, z nichž každý představuje řádek obsahu.
Počínaje PowerShellem 3.0 může Get-Content získat také zadaný počet řádků od začátku nebo konce položky.
Příklady
Příklad 1: Získání obsahu textového souboru
Tento příklad získá obsah souboru v aktuálním adresáři. Soubor LineNumbers.txt obsahuje ve formátu 100 řádků, Tento řádek X a používá se v několika příkladech.
1..100 | ForEach-Object { Add-Content -Path .\LineNumbers.txt -Value "This is line $_." }
Get-Content -Path .\LineNumbers.txt
This is Line 1
This is Line 2
...
This is line 99.
This is line 100.
Hodnoty pole 1-100 se odesílají potrubím do cmdletu ForEach-Object.
ForEach-Object k vytvoření souboru Add-Content používá blok skriptu s rutinou LineNumbers.txt. Proměnná $_ představuje hodnoty pole, jak je každý objekt odesílán v potrubí. Rutina Get-Content používá parametr Path k zadání souboru LineNumbers.txt a zobrazení obsahu v konzole PowerShellu.
Příklad 2: Omezit počet řádků, které vrátí Get-Content
Tento příkaz získá prvních pět řádků souboru. K získání prvních pěti řádků obsahu se používá parametr TotalCount. Tento příklad používá LineNumbers.txt soubor vytvořený v příkladu 1.
Get-Content -Path .\LineNumbers.txt -TotalCount 5
This is Line 1
This is Line 2
This is Line 3
This is Line 4
This is Line 5
Příklad 3: Získání konkrétního řádku obsahu z textového souboru
Tento příkaz získá určitý počet řádků ze souboru a pak zobrazí pouze poslední řádek tohoto obsahu. Parametr TotalCount získá prvních 25 řádků obsahu. Tento příklad používá LineNumbers.txt soubor vytvořený v příkladu 1.
(Get-Content -Path .\LineNumbers.txt -TotalCount 25)[-1]
This is Line 25
Příkaz Get-Content se zabalí do závorek, aby se příkaz dokončil před přechodem k dalšímu kroku.
Get-Contentvrátí pole řádků, což vám umožní přidat za závorku zápis indexu, abyste získali konkrétní číslo řádku. V tomto případě index [-1] určuje poslední index ve vráceném poli 25 načtených řádků.
Příklad 4: Získání posledního řádku textového souboru
Tento příkaz získá první řádek a poslední řádek obsahu ze souboru. Tento příklad používá LineNumbers.txt soubor vytvořený v příkladu 1.
Get-Item -Path .\LineNumbers.txt | Get-Content -Tail 1
This is Line 100
Tento příklad používá rutinu Get-Item k předvedení souborů do parametru Get-Content. Parametr Tail získá poslední řádek souboru. Tato metoda je rychlejší než načtení všech řádků a použití zápisu indexu [-1].
Příklad 5: Získání obsahu alternativního datového streamu
Tento příklad popisuje, jak pomocí parametru Stream získat obsah alternativního datového streamu pro soubory uložené na svazku Windows NTFS. V tomto příkladu se rutina Set-Content používá k vytvoření ukázkového obsahu v souboru s názvem Stream.txt.
Set-Content -Path .\Stream.txt -Value 'This is the content of the Stream.txt file'
# Specify a wildcard to the Stream parameter to display all streams of the recently created file.
Get-Item -Path .\Stream.txt -Stream *
PSPath : Microsoft.PowerShell.Core\FileSystem::C:\Test\Stream.txt::$DATA
PSParentPath : Microsoft.PowerShell.Core\FileSystem::C:\Test
PSChildName : Stream.txt::$DATA
PSDrive : C
PSProvider : Microsoft.PowerShell.Core\FileSystem
PSIsContainer : False
FileName : C:\Test\Stream.txt
Stream : :$DATA
Length : 44
# Retrieve the content of the primary, or $DATA stream.
Get-Content -Path .\Stream.txt -Stream $DATA
This is the content of the Stream.txt file
# Use the Stream parameter of Add-Content to create a new Stream containing sample content.
Add-Content -Path .\Stream.txt -Stream NewStream -Value 'Added a stream named NewStream to Stream.txt'
# Use Get-Item to verify the stream was created.
Get-Item -Path .\Stream.txt -Stream *
PSPath : Microsoft.PowerShell.Core\FileSystem::C:\Test\Stream.txt::$DATA
PSParentPath : Microsoft.PowerShell.Core\FileSystem::C:\Test
PSChildName : Stream.txt::$DATA
PSDrive : C
PSProvider : Microsoft.PowerShell.Core\FileSystem
PSIsContainer : False
FileName : C:\Test\Stream.txt
Stream : :$DATA
Length : 44
PSPath : Microsoft.PowerShell.Core\FileSystem::C:\Test\Stream.txt:NewStream
PSParentPath : Microsoft.PowerShell.Core\FileSystem::C:\Test
PSChildName : Stream.txt:NewStream
PSDrive : C
PSProvider : Microsoft.PowerShell.Core\FileSystem
PSIsContainer : False
FileName : C:\Test\Stream.txt
Stream : NewStream
Length : 46
# Retrieve the content of your newly created Stream.
Get-Content -Path .\Stream.txt -Stream NewStream
Added a stream named NewStream to Stream.txt
Parametr Stream je dynamický parametr poskytovatele FileSystem .
Ve výchozím nastavení Get-Content načítá pouze data z primárního nebo $DATA datového proudu.
streamy lze použít k ukládání skrytých dat, jako jsou atributy, nastavení zabezpečení nebo jiná data.
Příklad 6: Získání nezpracovaných obsahu
Příkazy v tomto příkladu získají obsah souboru jako jeden řetězec místo pole řetězců. Ve výchozím nastavení se obsah bez dynamického parametru raw vrátí jako pole řetězců oddělených novým řádkem. Tento příklad používá LineNumbers.txt soubor vytvořený v příkladu 1.
$raw = Get-Content -Path .\LineNumbers.txt -Raw
$lines = Get-Content -Path .\LineNumbers.txt
Write-Host "Raw contains $($raw.Count) lines."
Write-Host "Lines contains $($lines.Count) lines."
Raw contains 1 lines.
Lines contains 100 lines.
Příklad 7: Použití filtrů s Get-Content
Můžete zadat filtr pro rutinu Get-Content. Při použití filtrů k kvalifikaci parametru Path musíte zahrnout koncovou hvězdičku (*), která označuje obsah cesty.
Následující příkaz získá obsah všech *.log souborů v adresáři C:\Temp.
Get-Content -Path C:\Temp\* -Filter *.log
Příklad 8: Získání obsahu souboru jako pole bajtů
Tento příklad ukazuje, jak získat obsah souboru jako [byte[]] jako jeden objekt.
$byteArray = Get-Content -Path C:\temp\test.txt -Encoding Byte -Raw
Get-Member -InputObject $bytearray
TypeName: System.Byte[]
Name MemberType Definition
---- ---------- ----------
Count AliasProperty Count = Length
Add Method int IList.Add(System.Object value)
První příkaz pomocí parametru Encoding získá datový proud bajtů ze souboru.
Parametr Raw zajišťuje, že bajty budou vráceny jako [System.Byte[]]. Pokud parametr Raw chybí, návratová hodnota je datový proud bajtů, který powershell interpretuje jako [System.Object[]].
Parametry
-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 oprávnění při spuštění této rutiny, použijte Invoke-Command.
Vlastnosti parametru
| Typ: | PSCredential |
| Default value: | Current user |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-Delimiter
Určuje oddělovač, který Get-Content používá k rozdělení souboru na objekty při čtení. Výchozí hodnota je \n, znak konce řádku. Při čtení textového souboru Get-Content vrátí kolekci řetězcových objektů, z nichž každá končí znakem konce řádku. Když zadáte oddělovač, který v souboru neexistuje, Get-Content vrátí celý soubor jako jeden nedemitovaný objekt.
Tento parametr můžete použít k rozdělení velkého souboru na menší soubory zadáním oddělovače souborů jako oddělovače. Oddělovač se zachová (nezahodí) a stane se poslední položkou v každé části souboru.
Oddělovač je dynamický parametr, který poskytovatel FileSystem přidává k rutině Get-Content. Tento parametr funguje jenom na jednotkách systému souborů.
Poznámka:
Pokud je hodnota parametru Delimiter prázdným řetězcem, Get-Content nic nevrací. Jedná se o známý problém. Pro vynucení, aby Get-Content vrátil celý soubor jako jeden nedělený řetězec. Zadejte hodnotu, která v souboru neexistuje.
Vlastnosti parametru
| Typ: | String |
| Default value: | End-of-line character |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | 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ů.
- Bajt Zakóduje sadu znaků do posloupnosti bajtů.
- Výchozí 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.
- řetězec stejné jako unicode.
- Unicode používá UTF-16 s minimálním pořadím bajtů.
neznámé stejné jakounicode. - UTF7 používá UTF-7.
- UTF8 používá UTF-8.
- UTF32 používá UTF-32 s malým pořadím bajtů.
Kódování je dynamický parametr, který zprostředkovatel fileSystem přidá do rutiny Get-Content.
Tento parametr funguje jenom na jednotkách systému souborů.
Při čtení z binárních souborů a zápisu do binárních souborů použijte hodnotu Bajt pro Kódování dynamický parametr a hodnotu 0 pro parametr ReadCount. Hodnota ReadCount 0 přečte celý soubor v rámci jedné operace čtení a převede ho na jeden objekt (PSObject). Výchozí ReadCount hodnotu 1 přečte jeden bajt v každé operaci čtení a převede každý bajt na samostatný objekt, což způsobí chyby při použití rutiny Set-Content k zápisu bajtů do souboru.
Vlastnosti parametru
| Typ: | FileSystemCmdletProviderEncoding |
| Default value: | Default |
| Přípustné hodnoty: | ASCII, BigEndianUnicode, BigEndianUTF32, Byte, Default, OEM, String, Unicode, Unknown, UTF7, UTF8, UTF32 |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Exclude
Určuje, jako pole řetězců, položku nebo položky, které tento příkaz vylučuje z operace. Hodnota tohoto parametru kvalifikuje parametr Path.
Zadejte prvek cesty nebo vzor, například *.txt.
Jsou povoleny zástupné znaky.
Parametr Exclude je efektivní pouze v případě, že příkaz obsahuje obsah položky, například C:\Windows\*, kde zástupný znak určuje obsah adresáře C:\Windows.
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | True |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Filter
Určuje filtr pro kvalifikaci parametru 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í vyfiltroval PowerShell.
Vlastnosti parametru
| Typ: | String |
| Default value: | None |
| Podporuje zástupné znaky: | True |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Force
Vynucení přepíše atribut jen pro čtení nebo vytvoří adresáře pro dokončení cesty k souboru. Parametr Force se nepokoušá změnit oprávnění souboru nebo přepsat omezení zabezpečení.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | False |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Include
Určuje, jako pole řetězců, jednu nebo více položek, které tento cmdlet zahrnuje v operaci. Hodnota tohoto parametru kvalifikuje parametr Path. Zadejte prvek cesty nebo vzor, 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 adresáře C:\Windows.
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | True |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-LiteralPath
Určuje cestu k jednomu nebo více místům. Hodnota LiteralPath se používá přesně tak, jak je zadána. Žádný znak není interpretován jako zástupný znak. Pokud cesta obsahuje únikové znaky, uzavřete ji do jednoduchých uvozovek. Jednoduché uvozovky říkají PowerShellu, aby žádné znaky neinterpretoval jako únikové sekvence.
Další informace najdete v about_Quoting_Rules.
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | PSPath |
Sady parametrů
LiteralPath
| Position: | Named |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-Path
Určuje cestu k položce, kde Get-Content získá obsah. Jsou povoleny zástupné znaky. Cesty musí vést 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.
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | True |
| DontShow: | False |
Sady parametrů
Path
| Position: | 0 |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-Raw
Ignoruje znaky nového řádku a vrátí celý obsah souboru v jednom řetězci se zachovanými novými spojnicemi. Ve výchozím nastavení se znaky nového řádku v souboru používají jako oddělovače pro rozdělení vstupu do pole řetězců. Tento parametr byl představen v PowerShellu 3.0.
Raw je dynamický parametr, který poskytovatel FileSystem přidá do rutiny Get-Content Tento parametr funguje jenom na jednotkách systému souborů.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-ReadCount
Určuje, kolik řádků obsahu se odesílá kanálem najednou. Výchozí hodnota je 1. Hodnota 0 (nula) odešle veškerý obsah najednou.
Tento parametr nemění zobrazený obsah, ale má vliv na dobu potřebnou k zobrazení obsahu. S rostoucí hodnotou ReadCount se zvýší doba, kterou trvá vrácení prvního řádku, ale celková doba operace se sníží. To může způsobit znatelný rozdíl u velkých položek.
Vlastnosti parametru
| Typ: | Int64 |
| Default value: | 1 |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-Stream
Získá obsah zadaného alternativního datového proudu souboru NTFS ze souboru. Zadejte název datového proudu. Zástupné dokumentace nejsou podporovány.
Stream je dynamický parametr, který zprostředkovatel FileSystem přidá do rutiny Get-Content.
Tento parametr funguje jenom na jednotkách systému souborů v systémech Windows. Tento parametr byl představen ve Windows PowerShellu 3.0.
Vlastnosti parametru
| Typ: | String |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Tail
Určuje počet řádků od konce souboru nebo jiné položky. Můžete použít název parametru Tail nebo jeho alias Last. Tento parametr byl představen v PowerShellu 3.0.
Vlastnosti parametru
| Typ: | Int32 |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | Poslední |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-TotalCount
Určuje počet řádků od začátku souboru nebo jiné položky. Výchozí hodnota je -1 (všechny řádky).
Můžete použít název parametru TotalCount nebo jeho aliasy, First nebo Head.
Vlastnosti parametru
| Typ: | Int64 |
| Default value: | -1 |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | První, Hlava |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | 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.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | False |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | usetx |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Wait
Ponechá soubor otevřený po výstupu všech existujících řádků. Při čekání Get-Content zkontroluje soubor jednou za sekundu a v případě přítomnosti vypíše nové řádky.
Čekání můžete přerušit stisknutím kláves CTRL+C. Čekání také skončí, pokud se soubor odstraní, v takovém případě se zobrazí neukončující chyba.
Wait je dynamický parametr, který zprostředkovatel FileSystem přidá do rutiny Get-Content. Tento parametr funguje jenom na jednotkách systému souborů.
čekání nelze kombinovat s raw.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | False |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
CommonParameters
Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.
Vstupy
System.Int64, System.String
Ke Get-Contentmůžete určit počet čtení, celkový počet, cesty nebo přihlašovací údaje.
Výstupy
System.Byte, System.String
Get-Content vrací řetězce nebo bajty. Typ výstupu závisí na typu obsahu, který zadáte jako vstup.
Poznámky
Rutina Get-Content je navržená tak, aby fungovala s daty vystavenými jakýmkoli poskytovatelem. Pokud chcete zprostředkovatele získat ve vaší relaci, použijte rutinu Get-PSProvider. Pro více informací viz about_Providers.