PowerShell-opdrachten voor het schrijven naar bestanden: een complete handleiding

Laatste update: 30/07/2025
Auteur: Isaac
  • PowerShell kunt u eenvoudig tekst- en binaire bestanden maken, wijzigen en beheren met behulp van specifieke cmdlets.
  • commando's Functies zoals Set-Content, Add-Content en Out-File bieden verschillende manieren om informatie aan bestanden toe te voegen of te schrijven, zodat ze kunnen worden aangepast aan de behoeften van elke gebruiker.
  • De integratie van PowerShell met .NET-objecten en de mogelijkheid om met gedetailleerde machtigingen te werken, vergroten de veelzijdigheid van bestandsbeheer aanzienlijk.

Powershell-opdrachten om in bestanden te schrijven

Bestanden kunnen schrijven, wijzigen en manipuleren vanuit PowerShell Het is een fundamentele vaardigheid voor zowel systeembeheerders als voor elke gebruiker die ernaar streeft processen te automatiseren Windows. De PowerShell-console is niet alleen een alternatief voor de klassieke opdrachtprompt; is een complete scriptomgeving wat de deur opent naar geavanceerd en efficiënt bestandsbeheer, geschikt voor zowel eenvoudige als complexere taken.

Leer de belangrijkste opdrachten en technieken voor het werken met bestanden vanuit PowerShell Hiermee kunt u veel verder gaan dan de basisfunctionaliteiten van de grafische interface. Hieronder vindt u een gedetailleerde en actuele handleiding voor de meest veelzijdige cmdlets en methoden voor het schrijven naar tekst- en binaire bestanden, evenals praktische voorbeelden en buenos Tricks om uw dagelijkse leven te optimaliseren met PowerShell.

Opties voor het schrijven naar bestanden met PowerShell

PowerShell heeft verschillende cmdlets en methoden voor bestanden genereren, hun inhoud bewerken en ze naar uw behoeften manipuleren. De meest gebruikte en nuttige voor deze taken zijn:

  • set-inhoud: Schrijft of vervangt de inhoud van een bestand.
  • Inhoud toevoegen: Voegt extra inhoud toe aan het einde van een bestand zonder de bestaande inhoud te verwijderen.
  • Uitgaand bestand: Leidt de uitvoer van een opdracht om naar een bestand.
  • StreamWriter en andere .NET-methoden – voor situaties die meer controle vereisen.

Elk van deze cmdlets heeft interessante parameters en nuances voor verschillende scenario's. We zullen deze in dit artikel uitgebreid bespreken.

schrijf powershell-bestanden met cmdlet

Set-Content: bestanden schrijven of overschrijven

De cmdlet set-inhoud Het is waarschijnlijk het meest direct als het doel is een bestand aanmaken of de huidige inhoud ervan overschrijvenHet basisgebruik ervan is vrij intuïtief:

Set-Content -Path "C:\ruta\archivo.txt" -Value "Texto que quiero introducir"

Als het bestand al bestaat, vervangt deze opdracht het volledig door de nieuwe tekst. Als het bestand niet bestaat, wordt het automatisch aangemaakt op de opgegeven locatie.

  Dit zijn enkele eenvoudige stappen om spreuken en spreuken in Minecraft te verwijderen of te verwijderen

Het is ook mogelijk om eenvoudig met meerdere regels te werken. Om bijvoorbeeld een array met meerdere strings in een nieuw bestand op te slaan, doet u het volgende:

$contenido = @("Primera línea", "Segunda línea", "Tercera línea")
Set-Content -Path "C:\ruta\archivo.txt" -Value $contenido

Elk element van de array wordt op een aparte regel geschreven., waardoor het aanmaken van gestructureerde bestanden eenvoudiger wordt.

Add-Content: voeg informatie toe aan het einde van een bestand

Wanneer je nodig hebt gegevens toevoegen aan een bestaand bestand zonder het oude te verwijderen, de cmdlet Inhoud toevoegen is de perfecte optie. De syntaxis is erg vergelijkbaar met Set-Content:

Add-Content -Path "C:\ruta\archivo.txt" -Value "Nueva línea al final"

Met deze opdracht wordt de tekst aan het einde van het bestand ingevoegd, waarbij alle originele inhoud behouden blijft. Dit is vooral handig voor het verwerken van logs. logs of stapsgewijs informatie verzamelen.

Als u meerdere regels wilt toevoegen, kunt u dit doen door een array door te geven, zoals eerder getoond.

Out-File: Omleidingsopdrachtuitvoer

powershell omleiden uitvoer out-file

De Out-File-cmdlet valt op wanneer we dat willen direct de uitvoer van een opdracht opslaan of script in een bestandDit is bijvoorbeeld erg handig als u een lijst, een rapport of het resultaat van een complex proces wilt opslaan:

Get-Process | Out-File -FilePath "C:\ruta\procesos.txt"

In dit geval Wat u normaal gesproken op het scherm ziet, wordt in het bestand opgeslagen, met inachtneming van de opmaak en de regels zoals ze in de console worden weergegeven.

Standaard overschrijft Out-File het doelbestand., maar u kunt de parameter gebruiken -Toevoegen Om informatie toe te voegen zonder de vorige informatie te verwijderen:

Get-Date | Out-File -FilePath "C:\ruta\log.txt" -Append

Bovendien kunt u de bestandscodering opgeven met behulp van de parameter -Codering of forceer creatie met -Kracht.

Vergelijking tussen Set-Content, Add-Content en Out-File

Deze drie cmdlets worden vaak met elkaar verward, maar ze zijn elk ontworpen voor specifieke situaties:

  • set-inhoud: handig voor het definiëren of volledig vervangen van de inhoud van een bestand.
  • Inhoud toevoegen: perfect als u alleen tekst wilt toevoegen, zonder iets te veranderen aan wat er al staat.
  • Uitgaand bestand: Ideaal voor het omleiden van resultaten van complexe scripts of opdrachten.

Een belangrijke truc is om te combineren Uitgaande string Gebruik deze cmdlets als u objectuitvoer naar tekst moet converteren voordat u deze schrijft, vooral met Set-Content:

Get-Process | Out-String | Set-Content -Path "C:\ruta\procesos.txt"

Praktische voorbeelden van schrijven en omleiden in bestanden

Laten we eens kijken naar enkele veelvoorkomende voorbeelden en praktische situaties die u snel kunt oplossen:

  • Maak een nieuw tekstbestand:
    New-Item -Path "C:\ejemplo\nuevo.txt" -ItemType File
  • Maak de inhoud van een bestand leeg, maar behoud deze:
    Clear-Content -Path "C:\ejemplo\log.txt"
  • Testtekst toevoegen:
    "Este es un ejemplo" | Add-Content -Path "C:\ejemplo\nuevo.txt"
  • Vervang een woord in het hele bestand:
    (Get-Content .\archivo.txt).replace('buscar', 'reemplazo') | Set-Content .\archivo.txt

Vergeet niet om jokers (*) te gebruiken als u met meerdere bestanden tegelijk wilt werken., bijvoorbeeld:

Get-Content C:\ejemplo\*.txt | Out-File -FilePath C:\ejemplo\resumen.txt

Geavanceerde verwerking: bestanden schrijven met StreamWriter en .NET

Bestanden manipuleren met PowerShell StreamWriter

Voor taken die meer controle vereisen, zoals het schrijven van binaire gegevens, het verwerken van ongebruikelijke coderingen of het verwerken van grote volumes, kunt u de klasse gebruiken Systeem.IO.StreamWriter van .NET:

$sw = [System.IO.StreamWriter]::new('C:\ruta\archivo.txt')
$sw.WriteLine('Texto específico o datos binarios')
$sw.Close()

Met deze methode krijgt u extra flexibiliteit, vooral handig in geavanceerde scripts of wanneer u de uitvoerstroom moet aanpassen.

  Hoe u stap voor stap monogeluid in Windows 11 inschakelt

Werken met machtigingen en beveiligde bestanden

Soms kan het nodig zijn bestanden met specifieke machtigingen aanmaken of wijzig de ACL van een bestand. PowerShell en .NET maken dit eenvoudig door cmdlets en objecten te combineren. Om bijvoorbeeld volledige controle toe te wijzen aan een domeingebruiker:

$archivo = New-Item -Path "C:\ruta\archivo.txt" -ItemType "File"
$acl = Get-Acl $archivo.FullName
$permiso = "dominio\usuario","FullControl","Allow"
$accessRule = New-Object System.Security.AccessControl.FileSystemAccessRule $permiso
$acl.SetAccessRule($accessRule)
Set-Acl $archivo.FullName $acl

Op deze manier kunt u ervoor zorgen dat uw bestand niet alleen correct wordt aangemaakt en geschreven, maar ook is beschermd en heeft de juiste machtigingen.

Extra beheer: bestanden lezen, wijzigen en verwijderen

Bestandsbeheer in PowerShell beperkt zich niet tot typen. U kunt:

  • Lees inhoud met Get-Content: Get-Content -Path "C:\ruta\archivo.txt"
  • Bestanden verwijderen met Remove-Item: Remove-Item -Path "C:\ruta\archivo.txt"
  • Bestanden kopiëren of verplaatsen met Copy-Item en Move-Item omdat u mappen opnieuw moet ordenen.
  • Filter resultaten met behulp van jokers, selectoren en parameters om alleen aan de gewenste bestanden te werken.

Automatisering en manipulatie van grote hoeveelheden data

Een van de grootste voordelen van PowerShell is dat vergemakkelijkt de automatisering van processen met scripts. Moet u de inhoud van meerdere bestanden samenvoegen tot één nieuw bestand? Toepassingen:

Get-Content C:\carpeta\*.txt -Exclude resumen.txt | Set-Content C:\carpeta\resumen.txt

Of om het resultaat van een specifieke zoekopdracht aan meerdere bestanden toe te voegen:

Select-String "palabra clave" C:\carpeta\*.txt | Out-File -FilePath C:\carpeta\resultados.txt

En als u vastlopen tegenkomt met oneindige lussen of processen die nooit eindigen, bedenk dan dat u de uitvoering kunt onderbreken door op te drukken Control + C op de console.

Andere handige hulpmiddelen en snelkoppelingen in PowerShell

Naarmate u vertrouwder raakt met uw omgeving, ontdekt u handige snelkoppelingen, zoals:

  • Automatisch aanvullen met de Tab-toets voor bestandspaden of opdrachten.
  • Eerder gebruikte opdrachten terughalen met de pijltjes omhoog/omlaag.
  • Snel met meerdere mappen werken met behulp van Push-Location (pushd) en Pop-Location (popd).
  • Pijpuitvoer tussen verschillende cmdlets met behulp van het symbool | (pijp), bijvoorbeeld:
    Get-Content archivo.txt | Measure-Object -Word -Line -Character

Overzicht van cmdlets en equivalenties

PowerShell richt zich op consistentie in de naamgevingsconventies voor "werkwoord-zelfstandig naamwoord" in alle cmdlets, waardoor ze gemakkelijker te leren zijn. Dit zijn de belangrijkste opdrachten die u moet onthouden:

  Reparatie omdat er geen verbinding kan worden gemaakt met de proxyserverfout in Windows 10
Cmdlet Alias Primair gebruik
Set-Content sc Inhoud schrijven/vervangen
Add-Content ac Voeg inhoud toe aan het einde
Out-File - Omleidingsopdrachtuitvoer
Get-Content gc Inhoud lezen
Remove-Item rm Bestanden/mappen verwijderen
New-Item ni Bestanden en mappen aanmaken
Clear-Content - Lege bestanden

Veel van deze cmdlets hebben kortere aliassen of zelfs Bash-equivalenten, waardoor de overgang eenvoudiger wordt als u al ervaring hebt met andere systemen.

Geavanceerd schrijven: gegevens en gestructureerde bestanden exporteren

Niet alles is platte tekst. Als je het nodig hebt gestructureerde gegevens exporteren, zoals tabellen of objectenPowerShell biedt u cmdlets zoals Exporteren-Csv:

$datos = @( @{Nombre='Juan';Edad=30}, @{Nombre='Ana';Edad=25} )
$datos | Export-Csv -Path "C:\datos.csv" -NoTypeInformation

Op deze manier kunt u CSV-bestanden genereren die compatibel zijn met Excel en andere hulpmiddelen, waardoor de praktische toepassingen van PowerShell op het gebied van systeembeheer en gegevensanalyse aanzienlijk worden uitgebreid.

Beheers de PowerShell-opdrachten om in bestanden te schrijven Hiermee kunt u de mogelijkheden voor het beheren en automatiseren van taken op Windows-systemen uitbreiden. Van eenvoudige tekstbestanden tot complexe rapporten of logs, alles is binnen handbereik van de console en een paar cmdletsGeleidelijk aan zal het werken met PowerShell een vanzelfsprekend onderdeel van uw routine worden, waardoor u tijd bespaart en taken nauwkeuriger en krachtiger kunt uitvoeren.

Laat een reactie achter