Out-File
Hiermee wordt uitvoer naar een bestand verzonden.
Syntax
Out-File
[-FilePath] <string>
[[-Encoding] <string>]
[-Append]
[-Force]
[-NoClobber]
[-Width <int>]
[-NoNewline]
[-InputObject <psobject>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Out-File
[[-Encoding] <string>]
-LiteralPath <string>
[-Append]
[-Force]
[-NoClobber]
[-Width <int>]
[-NoNewline]
[-InputObject <psobject>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
De Out-File
cmdlet verzendt uitvoer naar een bestand. Wanneer u parameters voor de uitvoer moet opgeven, gebruikt Out-File
u in plaats van de omleidingsoperator (>
).
Voorbeelden
Voorbeeld 1: Uitvoer verzenden en een bestand maken
In dit voorbeeld ziet u hoe u een lijst met processen van de lokale computer naar een bestand verzendt. Als het bestand niet bestaat, Out-File
maakt u het bestand in het opgegeven pad.
Get-Process | Out-File -FilePath .\Process.txt
Get-Content -Path .\Process.txt
NPM(K) PM(M) WS(M) CPU(s) Id SI ProcessName
------ ----- ----- ------ -- -- -----------
29 22.39 35.40 10.98 42764 9 Application
53 99.04 113.96 0.00 32664 0 CcmExec
27 96.62 112.43 113.00 17720 9 Code
De Get-Process
cmdlet haalt de lijst met processen op die worden uitgevoerd op de lokale computer. De procesobjecten worden via de pijplijn naar de Out-File
cmdlet verzonden. Out-File
maakt gebruik van de parameter FilePath en maakt een bestand in de huidige map met de naam Process.txt. Met Get-Content
de opdracht wordt inhoud uit het bestand opgehaald en weergegeven in de PowerShell-console.
Voorbeeld 2: Voorkomen dat een bestaand bestand wordt overschreven
In dit voorbeeld wordt voorkomen dat een bestaand bestand wordt overschreven. Bestaande bestanden worden standaard Out-File
overschreven.
Get-Process | Out-File -FilePath .\Process.txt -NoClobber
Out-File : The file 'C:\Test\Process.txt' already exists.
At line:1 char:15
+ Get-Process | Out-File -FilePath .\Process.txt -NoClobber
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
De Get-Process
cmdlet haalt de lijst met processen op die worden uitgevoerd op de lokale computer. De procesobjecten worden via de pijplijn naar de Out-File
cmdlet verzonden. Out-File
maakt gebruik van de FilePath-parameter en probeert te schrijven naar een bestand in de huidige map met de naam Process.txt. Met de parameter NoClobber voorkomt u dat het bestand wordt overschreven en wordt een bericht weergegeven dat het bestand al bestaat.
Voorbeeld 3: Uitvoer verzenden naar een bestand in ASCII-indeling
In dit voorbeeld ziet u hoe u uitvoer coderen met een specifiek coderingstype.
$Procs = Get-Process
Out-File -FilePath .\Process.txt -InputObject $Procs -Encoding ASCII -Width 50
De Get-Process
cmdlet haalt de lijst met processen op die worden uitgevoerd op de lokale computer. De procesobjecten worden opgeslagen in de variabele , $Procs
. Out-File
maakt gebruik van de parameter FilePath en maakt een bestand in de huidige map met de naam Process.txt. De parameter InputObject geeft de procesobjecten door aan $Procs
het bestand Process.txt. De parameter Encoding converteert de uitvoer naar de ASCII-indeling . De parameter Width beperkt elke regel in het bestand tot 50 tekens, zodat sommige gegevens mogelijk worden afgekapt.
Voorbeeld 4: Een provider gebruiken en uitvoer naar een bestand verzenden
In dit voorbeeld ziet u hoe u de Out-File
cmdlet gebruikt wanneer u zich niet in een bestandssysteemproviderstation bevindt. Gebruik de Get-PSProvider
cmdlet om de providers op uw lokale computer weer te geven. Zie about_Providers voor meer informatie.
PS> Set-Location -Path Alias:
PS> Get-Location
Path
----
Alias:\
PS> Get-ChildItem | Out-File -FilePath C:\TestDir\AliasNames.txt
PS> Get-Content -Path C:\TestDir\AliasNames.txt
CommandType Name
----------- ----
Alias % -> ForEach-Object
Alias ? -> Where-Object
Alias ac -> Add-Content
Alias cat -> Get-Content
De Set-Location
opdracht maakt gebruik van de path parameter om de huidige locatie in te stellen op de registerprovider Alias:
. De Get-Location
cmdlet geeft het volledige pad weer voor Alias:
.
Get-ChildItem
verzendt objecten in de pijplijn naar de Out-File
cmdlet. Out-File
gebruikt de FilePath-parameter om het volledige pad en de bestandsnaam voor de uitvoer op te geven,C:\TestDir\AliasNames.txt. De Get-Content
cmdlet gebruikt de parameter Path en geeft de inhoud van het bestand weer in de PowerShell-console.
Parameters
-Append
Hiermee voegt u de uitvoer toe aan het einde van een bestaand bestand. Als er geen codering is opgegeven, gebruikt de cmdlet de standaardcodering. Deze codering komt mogelijk niet overeen met de codering van het doelbestand. Dit is hetzelfde gedrag als de omleidingsoperator (>>
).
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Hiermee wordt u gevraagd om bevestiging voordat u de cmdlet uitvoert.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Encoding
Hiermee geeft u het type codering voor het doelbestand. De standaardwaarde is Unicode.
De acceptabele waarden voor deze parameter zijn als volgt:
- ASCII Maakt gebruik van ASCII-tekenset (7-bits).
- BigEndianUnicode Gebruikt UTF-16 met de bytevolgorde big-endian.
- Standaard Gebruikt de codering die overeenkomt met de actieve codepagina van het systeem (meestal ANSI).
- OEM Gebruikt de codering die overeenkomt met de huidige OEM-codepagina van het systeem.
- Tekenreeks Hetzelfde als Unicode.
- Unicode Gebruikt UTF-16 met de bytevolgorde little-endian.
- Onbekende Hetzelfde als Unicode.
- UTF7 Maakt gebruik van UTF-7.
- UTF8 Maakt gebruik van UTF-8.
- UTF32 Gebruikt UTF-32 met de bytevolgorde little-endian.
Type: | String |
Accepted values: | ASCII, BigEndianUnicode, Default, OEM, String, Unicode, Unknown, UTF7, UTF8, UTF32 |
Position: | 1 |
Default value: | Unicode |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FilePath
Hiermee geeft u het pad naar het uitvoerbestand.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Overschrijft het kenmerk Alleen-lezen en overschrijft een bestaand alleen-lezen bestand. De parameter Force overschrijft de beveiligingsbeperkingen niet.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Hiermee geeft u de objecten die naar het bestand moeten worden geschreven. Voer een variabele in die de objecten bevat of typ een opdracht of expressie waarmee de objecten worden opgehaald.
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-LiteralPath
Hiermee geeft u het pad naar het uitvoerbestand. De parameter LiteralPath wordt precies gebruikt zoals deze wordt getypt. Jokertekens worden niet geaccepteerd. Als het pad escape-tekens bevat, plaatst u het tussen enkele aanhalingstekens. Enkele aanhalingstekens geven PowerShell aan dat geen tekens als escape-reeksen worden geïnterpreteerd. Zie about_Quoting_Rules voor meer informatie.
Type: | String |
Aliases: | PSPath |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-NoClobber
NoClobber voorkomt dat een bestaand bestand wordt overschreven en geeft een bericht weer dat het bestand al bestaat. Als er een bestand in het opgegeven pad bestaat, Out-File
wordt het bestand standaard zonder waarschuwing overschreven.
Type: | SwitchParameter |
Aliases: | NoOverwrite |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoNewline
Hiermee geeft u op dat de inhoud die naar het bestand wordt geschreven, niet eindigt met een nieuwregelteken. 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.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Hiermee wordt weergegeven wat er zou gebeuren als u de cmdlet uitvoert. De cmdlet wordt niet uitgevoerd.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Width
Hiermee geeft u het aantal tekens in elke regel van uitvoer. Eventuele extra tekens worden afgekapt, niet verpakt. Als deze parameter niet wordt gebruikt, wordt de breedte bepaald door de kenmerken van de host. De standaardwaarde voor de PowerShell-console is 80 tekens.
Type: | Int |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Invoerwaarden
U kunt elk object doorsluisen naar Out-File
.
Uitvoerwaarden
None
Out-File
genereert geen uitvoer.
Notities
De Out
cmdlets maken geen objecten op; ze worden alleen weergegeven en verzonden naar de opgegeven weergavebestemming. Als u een niet-opgemaakt object naar een Out
cmdlet verzendt, verzendt de cmdlet het naar een opmaak-cmdlet voordat het wordt weergegeven.
Gebruik de pijplijn om de uitvoer van een PowerShell-opdracht naar de Out-File
cmdlet te verzenden. U kunt gegevens opslaan in een variabele en de parameter InputObject gebruiken om gegevens door te geven aan de Out-File
cmdlet.
Out-File
verzendt gegevens, maar produceert geen uitvoerobjecten. Als u de uitvoer van Out-File
doorsluist naar Get-Member
, meldt de Get-Member
cmdlet dat er geen objecten zijn opgegeven.