====== Powershell Script Arguments/Parameters ======
* [[https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_functions_advanced_parameters?view=powershell-7.1]]
* [[https://www.red-gate.com/simple-talk/sysadmin/powershell/how-to-use-parameters-in-powershell/]]
function foo {
param(
[Parameter(Mandatory=$true)] [String]$EmailTo = "ToAddr@gmail.com",
[Parameter(Mandatory=$true)] [String]$EmailFrom = "FromAddr@gmail.com"
)
}
=== switch parameters ===
function Switch-Item {
param ([switch]$on)
if ($on) { "Switch on" }
else { "Switch off" }
}
=== positional arguments ===
function Get-Extension {
$name = $args[0] + ".txt"
$name
}