Private/Wissen/C_Advance/C03_Kontrollstrukturen.ps1

<#
 
# Kontrollstrukturen
 
Skriptausführung mit Bedingungen und Schleifen steuern
 
- **Hashtags** if switch while do until for foreach
- **Version** 2019.04.05
 
#>


# TODO Für die korrekte Syntax gibt es Schnipsel zum einfügen (CTRL + ALT + J)
# TODO ... oder über Autovervollständigung (Beachte Symbol)

# ? if { } elseif { } else { }
Get-Help -Name about_if -ShowWindow

# ? switch
Get-Help -Name about_switch -ShowWindow

# ? while {} s. Kopfgesteuerte Endlosschleifen
Get-Help -Name about_while -ShowWindow

# ? do {} while s. Fußgesteuerte Endlosschleifen
Get-Help -Name about_do -ShowWindow

# ? do {} until s. Fußgesteuerte Endlosschleifen
Get-Help -Name about_do -ShowWindow

# ? for => s. Zählerschleife
Get-Help -Name about_for -ShowWindow

# ? foreach => s. Listenschleifen
Get-Help -Name about_foreach -ShowWindow

$procs = Get-Process
foreach($item in $procs) {
    $item.Name
}
# ? vs.
Get-Process -PipelineVariable prozess | ForEach-Object -Process { $prozess.Name }

# ? break; continue
Get-Help -Name about_Break -ShowWindow
Get-Help -Name about_Continue -ShowWindow

$procs = Get-Process
foreach($item in $procs) {
    if($item.Name -eq "WUDFHost") {
        continue
        # vs.
        #break
    }
    $item.Name
}