2017-03-27 4 views
1

J'utilise 7zip pour extraire mon fichier zip en utilisant Powershell avec le code suivant:Impossible de créer un erreur de répertoire de sortie: 7zip

set-alias sz "$env:ProgramFiles\7-Zip\7z.exe" 
sz x -o:$destinationUnzipPath $zipfilePath -r ; 

et je reçois l'erreur suivante:

ERROR: Can not create output directory: :D:\Temp\4.7-4.8\ System ERROR: The filename, directory name, or volume label syntax is incorrect.

Même si je créer le répertoire manuellement, je reçois toujours la même erreur.

et si je ne fournit pas de répertoire de sortie, la sortie suivante est

7-Zip [64] 16.04 : Copyright (c) 1999-2016 Igor Pavlov : 2016-10-04

Scanning the drive for archives: 1 file, 140483197 bytes (134 MiB)

Extracting archive: D:\Temp\4.7-4.8.zip -- Path = D:\Temp\4.7-4.8.zip Type = zip Physical Size = 140483197

Everything is Ok

Folders: 71 Files: 3448 Size: 1709276577 Compressed: 140483197

Mais je ne peux pas trouver les fichiers décompressés dans le répertoire zip ou nulle part ailleurs.

+0

enlever le côlon du cmd –

Répondre

2

Ce n'est pas un problème de PowerShell mais un problème dans les paramètres de votre ligne de commande passés à 7-zip. Vous avez ajouté un deux-points au paramètre -o là où ce n'est pas nécessaire.

changer cette

sz x -o:$destinationUnzipPath $zipfilePath -r ; 

à cela devrait fonctionner

sz x -o$destinationUnzipPath $zipfilePath -r ; 
+0

ce qui est le paramètre pour ignorer si décompressé le fichier existe déjà? –

+0

Vous pouvez utiliser 'Test-Path $ destinationUnzipPath' pour vérifier si le dossier existe déjà et ignorer la commande unzip. –