Cmdlets/Invoke-Pause.ps1
# ? TITEL Invoke-Pause # ? DESCRIPTION Zeigt eine Pause an. # ? TAGS UserCmdlet # ? VERSION 2019.09.09 using Module Microsoft.PowerShell.Management using Module Microsoft.PowerShell.Utility using namespace System using namespace System.Runtime.InteropServices $ErrorActionPreference = [System.Management.Automation.ActionPreference]::Stop Set-StrictMode -Version Latest function Invoke-Pause { <# .SYNOPSIS Zeigt eine Pause an. .EXAMPLE Invoke-Pause -PauseInMinuten 15 -Titel Kaffeepause #> param ( [Parameter(Mandatory = $true)] [decimal]$PauseInMinuten, [string]$Titel ) $pauseInSekunden = $PauseInMinuten*60 1..$pauseInSekunden | ForEach-Object -Process { $restPauseSekunden = $PauseInMinuten*60-$_ Write-Progress -Activity "$PauseInMinuten Minuten $Titel!" ` -PercentComplete ([int](100 / $pauseInSekunden * $_)) ` -SecondsRemaining $restPauseSekunden Start-Sleep -Seconds 1 } } |