Je rencontre un problème que je n'arrive pas à contourner en utilisant la cmdlet Read-Archive disponible via PowerShell Community Extensions (v2.0.3782.38614)).PowerShell PSCX Read-Archive: Impossible de lier le paramètre ... problème
Voici un échantillon de réduire utilisé pour exposer le problème que je suis en cours d'exécution dans:
$mainPath = "p:\temp"
$dest = Join-Path $mainPath "ps\CenCodes.zip"
Read-Archive -Path $dest -Format zip
Exécution du produit ci-dessus l'erreur suivante:
Read-Archive : Cannot bind parameter 'Path'. Cannot convert the "p:\temp\ps\CenCodes.zip" value of type "System.String" to type "Pscx.IO.PscxPathInfo".
At line:3 char:19
+ Read-Archive -Path <<<< $dest -Format zip
+ CategoryInfo : InvalidArgument: (:) [Read-Archive], ParameterBindingException
+ FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Pscx.Commands.IO.Compression.ReadArchiveCommand
Si je ne me Join Chemin pour construire le chemin passé à Read-Archive, il fonctionne, comme dans cet exemple:
$mainPath = "p:\temp"
$path = $mainPath + "\ps\CenCodes.zip"
Read-Archive -Path $path -Format zip
Sortie de ci-dessus:
ZIP Folder: CenCodes.zip#\
Index LastWriteTime Size Ratio Name ----- ------------- ---- ----- ----
0 6/17/2010 2:03 AM 3009106 24.53 % CenCodes.xls
Encore plus déroutant est si je compare les deux variables passées comme argument de chemin dans les deux échantillons en lecture d'archives ci-dessus, ils semblent identiques:
... Ce
Write-Host "dest=$dest"
Write-Host "path=$path"
Write-Host ("path -eq dest is " + ($dest -eq $path).ToString())
Sorties ...
dest=p:\temp\ps\CenCodes.zip
path=p:\temp\ps\CenCodes.zip
path -eq dest is True
quelqu'un a des idées pour expliquer pourquoi les premiers échantillons, mais les saisines s econd on fonctionne bien?