Project

General

Profile

Test-PSProviderPath

function Test-PSProviderPath([string]$Path, [String] $ProviderName="FileSystem")

Renvoi $true si le chemin $Path référence le provider PowerShell $ProviderName.
Sinon renvoi une exception indiquant la raison de l'échec.

On peut vouloir valider qu'un PSPath référence un provider particulier.

cd C:\temp\PSHistory\Datas

"C:\temp",
"Env:\",
"truc:\",
"C:\*",
"..\..\Test.ps1",
".."|Foreach {
   trap {Write-host $_.exception.message -fore red; continue}
    Write-host "valide $_" -fore green
    Test-PSProviderPath $_ 
}

Les chemins relatifs ne sont autorisés que sur les providers autorisant la naviguation.