PowerShell/scripts/write-clock.ps1

41 lines
1.1 KiB
PowerShell
Raw Normal View History

2024-10-01 15:24:16 +02:00
<#
2023-06-15 11:30:47 +02:00
.SYNOPSIS
Writes an ASCII clock
.DESCRIPTION
This PowerShell script writes the current time as ASCII clock.
2023-06-15 11:30:47 +02:00
.EXAMPLE
2023-07-03 21:14:17 +02:00
PS> ./write-clock.ps1
2023-06-15 11:30:47 +02:00
.LINK
https://github.com/fleschutz/PowerShell
.NOTES
Author: Markus Fleschutz | License: CC0
#>
try {
2023-07-03 21:14:17 +02:00
[system.threading.thread]::currentthread.currentculture = [system.globalization.cultureinfo]"en-US"
$Weekday = Get-Date -UFormat "%A"
$Date = Get-Date -UFormat "%d %b %Y"
$Week = Get-Date -UFormat "%V"
2023-07-03 21:14:17 +02:00
Clear-Host
& "$PSScriptRoot/write-big.ps1" " $Weekday"
Write-Output ""
& "$PSScriptRoot/write-big.ps1" " $Date"
2023-07-03 21:14:17 +02:00
Write-Output ""
& "$PSScriptRoot/write-big.ps1" " WEEK $Week"
2023-07-03 21:30:46 +02:00
Write-Output ""
2023-07-03 21:14:17 +02:00
$StartPosition = $HOST.UI.RawUI.CursorPosition
while ($true) {
2023-06-15 11:30:47 +02:00
$Time = Get-Date -format "HH:mm:ss"
2023-07-03 21:14:17 +02:00
& "$PSScriptRoot/write-big.ps1" " $Time "
Write-Output "`n (press <Ctrl> <C> to stop)"
2023-06-15 11:30:47 +02:00
Start-Sleep -seconds 1
2023-07-03 21:14:17 +02:00
$HOST.UI.RawUI.CursorPosition = $StartPosition
2023-06-15 11:30:47 +02:00
}
exit 0 # success
} catch {
"⚠️ Error in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])"
exit 1
}