Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
function Test-DefaultParameters {
[cmdletbinding()]
param(
[parameter(Position = 0)]
[ValidateScript({ Test-Path -Path $_ })]
[Alias('PSPath')]
[string]
$Path = (Read-Host -Prompt 'Enter the location of the folder'),
[parameter(Position = 1)]
[ValidateRange(1, 10)]
[Alias('RandomNumber')]
[int]
$Number = (Read-Host -Prompt 'Enter a number from 1 to 10'),
[parameter(Position = 2)]
[ValidateSet('Set1', 'Set2', 'Set3')]
[Alias('Option', 'Choose')]
[string]
$Set = (Read-Host -Prompt 'Choose a set of Set1, Set2, or Set3')
)
process {
[PSCustomObject]@{
Path = $Path
Number = $Number
Set = $Set
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment