Als u op de markt bent voor een PowerShell cmdlet die de uitvoer in een tekstbestand kan opslaan, hebt u geluk. Je staat op het punt te leren hoe je de PowerShell Out-File cmdlet gebruikt samen met de populaire Out-File -Append parameter ook!

inhoudsopgave

Hoe werkt Out-File?

de PowerShell Out-File cmdlet is eenvoudig van aard; het enige doel is om de ontvangen uitvoer op te slaan en op te slaan in een tekstbestand.,

Out-File werd ontworpen om de standaard uitvoer redirection operator te vervangen (>). Zelfs vanaf de DOS dagen, konden we uitvoer omleiden naar een bestand. Deze cmdlet is de PowerShell manier om het te doen.

de Out-File cmdlet wordt doorgaans gebruikt aan het einde van de PowerShell-pijplijn. Het enige doel is om de ruwe uitvoer rechtstreeks naar een tekstbestand te sturen zonder rekening te houden. Er zijn minimale manieren om te tweaken hoe die output wordt geschreven.,

uitvoer verzenden naar een bestand

stel dat u een script hebt dat een lijst van alle Windows-services op uw computer retourneert. Wanneer u Get-Service uitvoert, zult u alle objecten ontvangen die u op de console kunt verwachten.

maar misschien wilt u die uitvoer opslaan in een tekstbestand. De Out-File cmdlet is een geweldige manier om dat te doen. Je kunt Out-File gebruiken door er bijna alles naar toe te pipen via de pipeline.,

hieronder kunt u zien dat de uitvoer van Get-Service werd verzonden naar de cmdlet die een tekstbestand met de naam Services creëerde.txt dat de exacte weergave die u ziet op de console bevat.

PS> Get-Service | Out-File -FilePath C:\Services.txtPS> Get-Content C:\Services.txtStatus Name DisplayNameStopped AJRouter AllJoyn Router ServiceStopped ALG Application Layer Gateway ServiceStopped AppIDSvc Application IdentityStopped Appinfo Application InformationStopped AppMgmt Application Management<SNIP>

toevoegen aan een bestand

standaard overschrijft Out-File alles in het tekstbestand dat wordt geleverd via de parameter FilePath. U kunt dit gedrag echter overschrijven door de parameter Append te gebruiken.,

misschien accumuleert U console-uitvoer in een bestand en wilt u tekst toevoegen aan een bestand in plaats van te overschrijven. DeAppend parameter is uw beste vriend.

door gebruik te maken van de Out-File -Append parameter die u hieronder kunt zien, merk op dat als u het niet gebruikt de C:\File.txt is overschreven. Maar zodra je de parameter Append tack, voegt het de uitvoer toe aan het einde.

het wijzigen van de uitvoer

standaard zal deze cmdlet proberen te repliceren wat op de console wordt getoond, maar er zijn een aantal manieren om het te manipuleren., Bijvoorbeeld, de cmdlet heeft eenNoNewLine parameter die alleen alle newline tekens verwijdert.

of u kunt de tekst op elke rij met een bepaald aantal tekens ook afknippen met de parameter Width.

conclusie

in een realistisch scenario werkt deOut-File cmdlet, maar er zijn betere manieren om uitvoer in een bestand op te slaan.

de Out-File cmdlet biedt geen echte opties om de uitvoer te manipuleren. Het slaat gewoon de uitvoer precies zoals weergegeven in de console., Deze cmdlet is vergelijkbaar met een PowerShell transcript dat gewoon schrijft alles direct naar een tekstbestand.

deAdd-Content ofSet-Content cmdlets zullen altijd meer flexibiliteit hebben, maar als u een snelle manier nodig hebt om de PowerShell-uitvoer naar een bestand te krijgen, isOut-File de juiste manier.

gerelateerd: Set-Content: de PowerShell manier om naar een bestand te schrijven