PowerShell/Docs/speak-countdown.md
2023-05-26 12:20:18 +02:00

68 lines
1.7 KiB
Markdown

## The *speak-countdown.ps1* Script
This PowerShell script speaks a countdown by text-to-speech (TTS) starting from a given number.
## Parameters
```powershell
/home/mf/Repos/PowerShell/Scripts/speak-countdown.ps1 [[-StartNumber] <Int32>] [<CommonParameters>]
-StartNumber <Int32>
Specifies the number to start from (10 by default)
Required? false
Position? 1
Default value 10
Accept pipeline input? false
Accept wildcard characters? false
[<CommonParameters>]
This script supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction,
WarningVariable, OutBuffer, PipelineVariable, and OutVariable.
```
## Example
```powershell
PS> ./speak-countdown 60
```
## Notes
Author: Markus Fleschutz | License: CC0
## Related Links
https://github.com/fleschutz/PowerShell
## Source Code
```powershell
<#
.SYNOPSIS
Speaks a countdown by text-to-speech
.DESCRIPTION
This PowerShell script speaks a countdown by text-to-speech (TTS) starting from a given number.
.PARAMETER StartNumber
Specifies the number to start from (10 by default)
.EXAMPLE
PS> ./speak-countdown 60
.LINK
https://github.com/fleschutz/PowerShell
.NOTES
Author: Markus Fleschutz | License: CC0
#>
param([int]$StartNumber = 10)
try {
for ([int]$i = $StartNumber; $i -gt 0; $i--) {
& "$PSScriptRoot/speak-english.ps1" $i
Start-Sleep -milliseconds 200
}
& "$PSScriptRoot/speak-english.ps1" "zero"
exit 0 # success
} catch {
"⚠️ Error in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])"
exit 1
}
```
*Generated by convert-ps2md.ps1 using the comment-based help of speak-countdown.ps1*