Private/Test-ValidFQDN.ps1
function Test-ValidFQDN { [CmdletBinding()] Param( [Parameter(Mandatory,Position=0,ValueFromPipeline)] [ValidateNotNullOrEmpty()] [Alias('Name')] [string] $FQDN ) begin { Get-CallerPreference -Cmdlet $PSCmdlet -SessionState $ExecutionContext.SessionState } process { $CleanedName = ($FQDN.Trim()).TrimEnd('\.') if (-not $CleanedName.Contains('.')) { throw "Invalid FQDN: $($CleanedName)" } $CleanedName } } |