Windows Powershell – The Basics 2
BAM! Welkom terug bij de 2e Powershell post. Na het lezen van de eerste Powershell post ben je bekend met de basis en de ruwe opzet van Powershell. Nu zijn we er klaar voor om eens wat beter te kijken naar deze krachtige CLI.
Laten we eerst eens kijken naar een aantal veel voorkomende commando’s om vanuit daar verder te werken. Powershell commando’s zijn wat langer dan we gewend zijn maar omschrijven de functie van het commando beter. Zoals geleerd in de vorige post schrijven we de meeste Powershell Cmdlet commando’s met hoofdletters om verschillende woorden te onderscheiden en wordt de functie gescheiden door een koppelteken. Dus %DOE%-%DIT%. Bijvoorbeeld “Get-Content”. Veel commando’s hebben echter ook een command alias welke vergelijkbaar is met CMD commando’s of Linux Bash commando’s. Deze commando’s zijn korter en volbrengen dezelfde taak.
Veel voorkomende Powershell Cmdlet Commando’s
Cmdlet-naam: Add-Content
Commando alias: ac
Functie: Data toevoegen aan bestaande data
Cmdlet-naam: Get-Content
Commando alias: cat / gc
Functie: Bekijk de inhoud van een bestand
Cmdlet-naam: Set-Content
Commando alias: sc
Functie: Vervangt de inhoud van een bestand voor de gespecificeerde inhoud
Cmdlet-naam: Clear-Content
Commando alias: clc
Functie: Verwijder de inhoud van een bestand maar niet het bestand zelf
Cmdlet-naam: Add-PSSnapIn
Commando alias: asnp
Functie: Voeg 1 of meerdere Powershell snap-ins toe aan de huidige sessie
Cmdlet-naam: Get-PSSnapIn
Commando alias: gsnp
Functie: Bekijk alle Powershell snap-ins van de huidige sessie
Cmdlet-naam: Set-Location
Commando alias: cd / chdir
Functie: Verander de huidige (werk) directory
Cmdlet-naam: Get-Location
Commando alias: pwd
Functie: Bekijk de huidige (werk) directory
Cmdlet-naam: Reslove-Path
Commando alias: rvpa
Functie: Resolves de wildcards in een bepaald pad en laat het volledige pad zien
Cmdlet-naam: mkdir
Commando alias: md
Functie: Maak een nieuwe folder aan
Cmdlet-naam: Clear-Host
Commando alias: clear / cls
Functie: Maak het scherm schoon / leeg
Cmdlet-naam: Clear-History
Commando alias: clhy
Functie: Verwijder de cache van vooraf ingevoerde commando’s (pijltje omhoog / omlaag werken niet meer om commando’s terug te halen)
Cmdlet-naam: Clear-ItemProperty
Commando alias: clp
Functie: Verwijder de inhoud van een eigenschap (van het file) maar niet de eigenschap
Cmdlet-naam: New-Variable
Commando alias: nv
Functie: Maak een nieuwe variabele aan
Cmdlet-naam: Clear-Variable
Commando alias: clv
Functie: Verwijder de waarde van een variabele
Cmdlet-naam: Set-Variable
Commando alias: set
Functie: Specificeer een variabele en maak de variabele aan als deze niet bestaat
Cmdlet-naam: Connect-PSSession
Commando alias: cnsn
Functie: Verbind met een eerder verbroken Powershell sessie
Cmdlet-naam: Get-PSSession
Commando alias: gsn
Functie: Bekijk alle Powershell sessies
Cmdlet-naam: New-PSSessionConfigurationFile
Commando alias: npssc
Functie: Maak een nieuw bestand met standaarden voor de sessie
Cmdlet-naam: Compare-Object
Commando alias: compare / diff
Functie: Vergelijk 2 objecten met elkaar
Cmdlet-naam: Copy-Item
Commando alias: copy / cpi / cp
Functie: Kopieer een bestand naar een andere locatie
Cmdlet-naam: Move-Item
Commando alias: move / mi
Functie: Verplaats een bestand naar een andere locatie
Cmdlet-naam: Delete-Item / Remove-Item
Commando alias: del / erase
Functie: Verwijder bestanden en folders
Cmdlet-naam: New-Item
Commando alias: ni
Functie: Maak een nieuw item
Cmdlet-naam: Copy-ItemProperty
Commando alias: cpp
Functie: Kopieer een eigenschap en zijn waarde naar een andere locatie
Cmdlet-naam: Measure-Object
Commando alias: measure
Functie: Berekent de numerieke eigenschappen van objecten evenals de karakters, woorden en regels in stringobjecten, zoals tekstbestanden
Cmdlet-naam: Disable-PSBreakpoint
Commando alias: dbp
Functie: Zet de “breakpoints” uit in de huidige sessie waardoor scripts niet meer stoppen nadat een breakpoint geactiveerd wordt
Cmdlet-naam: Get-ChildItem
Commando alias: dir / gci / ls
Functie: Toon alle onderliggende objecten in de folder
Cmdlet-naam: Disconnect-PSSession
Commando alias: dnsn
Functie: Verbreek een sessie
Cmdlet-naam: Export-Csv
Commando alias: epcsv
Functie: Converteert de objecten in een CSV bestand
Cmdlet-naam: Export-PSSession
Commando alias: epsn
Functie: Exporteer de commando’s van de huidige sessie in een Windows Powershell module
Cmdlet-naam: Import-PSSession
Commando alias: ipsn
Functie: Importeer de commando’s van een eerder opgeslagen sessie in de huidige sessie
Cmdlet-naam: Format-List
Commando alias: fl
Functie: Formateer de output naar een lijst
Cmdlet-naam: Format-Table
Commando alias: ft
Functie: Formateer de output naar een tabel
Cmdlet-naam: ForEach-Object
Commando alias: foreach / %
Functie: Voert een actie uit tegenover ieder item in de lijst
Cmdlet-naam: Where-Object
Commando alias: ?
Functie: Selecteer objecten van een collectie gebaseerd op hun eigenschappen
Cmdlet-naam: Get-Alias
Commando alias: gal
Functie: Verkrijg de aliassen van de huidige sessie
Cmdlet-naam: New-Alias
Commando alias: nal
Functie: Maak een nieuwe alias aan
Cmdlet-naam: Get-Command
Commando alias: gcm
Functie: Zie alle commando’s
Cmdlet-naam: Get-PSDrive
Commando alias: gdr
Functie: Verkrijg alle fysieke en virtuele drives binnen de sessie
Cmdlet-naam: New-PSDrive
Commando alias: mount
Functie: Maak een tijdelijke of een permanente network drive
Cmdlet-naam: Get-History
Commando alias: ghy / h / history
Functie: Verkrijg een lijst met commando’s welke in de huidige sessie gebruikt zijn
Cmdlet-naam: Get-History
Commando alias: ghy / h / history
Functie: Verkrijg een lijst met commando’s welke in de huidige sessie gebruikt zijn
Cmdlet-naam: Invoke-History
Commando alias: ihy
Functie: Voer voorgaande commando’s van de sessie nogmaals uit
Cmdlet-naam: Get-Process
Commando alias: gps
Functie: Zie alle actieve processen op de huidige computer of op een remote computer
Cmdlet-naam: Stop-Process
Commando alias: kill
Functie: Stop 1 of meerdere lopende processen
Cmdlet-naam: Start-Process
Commando alias: start
Functie: Start 1 of meerdere processen
Cmdlet-naam: Get-Service
Commando alias: gsv
Functie: Zie de services op de huidige computer of op een remote computer
Cmdlet-naam: Stop-Service
Commando alias: spsv
Functie: Stop 1 of meerdere services
Cmdlet-naam: Start-Service
Commando alias: sasv
Functie: Start 1 of meerdere services
Cmdlet-naam: New-Module
Commando alias: nmo
Functie: Maak een nieuwe dynamische module welke in het geheugen geladen wordt
Cmdlet-naam: Get-WmiObject
Commando alias: gwmi
Functie: Verkrijg alle actieve WMI classes of informatie over de beschikbare classes
Cmdlet-naam: Invoke-WMIMethod
Commando alias: iwmi
Functie: Roep WMI methodes aan
Cmdlet-naam: Out-Printer
Commando alias: lp
Functie: Zend de output naar een printer
Cmdlet-naam: Out-Host
Commando alias: oh
Functie: Stuur de output naar de command-line
Cmdlet-naam: Write-Output
Commando alias: echo
Functie: Stuur de output door naar het volgende commando via een | pipeline en als de output niet doorgestuurd wordt toon deze dan op het scherm
Cmdlet-naam: Get-EventLog
Functie: Bekijk je Windows EventLogs in Powershell
Cmdlet-naam: Show-Command
Commando alias: shcm
Functie: Zoek Powershell commando’s op in een grafische interface en genereer meteen het juiste commando
Cmdlet-naam: help
Commando alias: man
Functie: Toont informatie en voorbeelden van Powershell commando’s
In deze serie posts gebruiken we primair de Powershell Cmdlet-naam. Weet echter dat CMD en Bash commando’s voor een bepaalde actie vaak ook prima werken.
Nu we deze commando’s kennen en de opbouw van deze een stuk duidelijker is kunnen we aan de slag om ze ook echt toe te gaan passen in Windows Powershell. Op naar Powershell post 3.