Binnen Powershell kan je ook heel makkelijk de resultaten die op je scherm komen opslaan in een file op je hardeschijf, zodat je deze later terug kan opvragen.
Met behulp van het Pipe-teken is het mogelijk de output op te slaan in een bestand. In dit eerste voorbeeld een CSV-bestand (Comma-seperated values).
Get-ChildItem -Path 'C:Program Files' -Recurse | `
Export-Csv c:logboek.csv
Nu wordt de output opgeslaan in een csv-bestand, je ziet ook geen output meer op het scherm.
Het kan zijn (Naargeland de versie die je gebruikt van Windows 10 dat je met dit script een foutmelding krijgt. Je moet hier niets van aantrekken, het CSV-bestand word wel aangemaakt met uitzondering van 1 map.
Je kan nu je csv-bestand opendoen met notepad. Dit kan ook rechtstreeks in powershell
notepad .logboek.csv
of
notepad c:logboek.csv
Get-ChildItem -Path 'C:Program Files' -Recurse | ` Export-Clixml C:logboek.xml
Nu wordt er het zelfde gedaan, enkel wordt de output nu opgeslaan als een xml bestand. De opbouw van een xml bestand ziet er wat anders uit, maar hte is dezelfde data die wordt opgeslaan.
Ook dit kan je open doen in een notpad.
notepad .logboek.xml
of
notepad c:logboek.xml
Er zijn nog andere manier om de output op te slaan zo kan je natuurlijk ook als een gewoon txt-betsand opslaan, dit gaat als volgt:
Get-ChildItem C:data1*.* | Out-File -FilePath c:archief.txt
Dit geeft een onopgemaakte tekst net zoals je het op het scherm zou krijgen als je het niet zou exporteren. Alleen gebruiken we hier geen export-commando maar Out-File.
Je kan ook de output gaan opslaan als een HTML-bestand, het enige andere dat hier moet gebeuren is dat je eerste de output moet gaan converteren naar HTML en dan pas gaan opslaan in een HTML-bestand. Je gaat dus gebruik maken van meerdere Pipe-tekens.
Get-Alias | ConvertTo-Html | Out-File aliases.html
Als je dit bestand nu rechtstreeks in Powershell zou willen opdoen in je default webbrowser kan je het volgende commando gebruiken:
Invoke-Item C:aliases.html
Invoke-Item kijkt eigenlijk naar de extentie, in dit voorbeeld .html. En het default programma voor voor HTML is Microsoft Edge, FireFox, Google Chrome of nog iets anders.
Als je nu bijvoorbeeld office hebt geinstalleerd en je doet invoke-Item Document1.doc dan ziet het commando .doc en weet hij dat het item moet opgaan in Word. In Windows kan je natuurlijk wel je Default programma gaan aanpassen per extentie en het is daar dat het commando ook gaat gaan kijken waarin een bepaald Item moet worden open gedaan.