Question decompression fichier zip

  • sanched
  • Auteur du sujet
  • Visiteur
  • Visiteur
il y a 8 ans 2 mois #25141 par sanched
decompression fichier zip a été créé par sanched
Bonjour,
Je souhaite dézipper tout le contenu d'un fichier .7z dans un autre. J'ai essayé la méthode ci dessous mais j'ai une erreur sur laquelle je suis bloqué. Quelqu'un aurait-t-il une idée ou une autre méthode?

[code:1]# On charge la classe
[System.Reflection.Assembly]::LoadWithPartialName(\"System.IO.Compression.FileSystem\"«») | Out-Null

# Archive= path vers l'archive
$Archive=\"c:\test\*.zip\"

# $Destination = chemin vers destinations
$Destination=\"c:\test2\\"
[/code:1]
erreur ci-dessous:


[code:1]Exception lors de l'appel de « ExtractToDirectory » avec « 2 » argument(s) : «Caractères non conformes dans le chemin d'accès. »
Au caractère Ligne:13 : 1
+ [System.IO.Compression.ZipFile]::ExtractToDirectory($Archive, $Destination)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:«») [], MethodInvocationException
+ FullyQualifiedErrorId : ArgumentException[/code:1]<br><br>Message édité par: Arnaud, à: 19/03/18 15:21

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 8 ans 2 mois #25142 par xyz
Réponse de xyz sur le sujet Re:decompression fichier zip
Salut,
selon la documentation de l'exception :

public static void ExtractToDirectory(
string sourceArchiveFileName,
string destinationDirectoryName
)

ArgumentException :

destinationDirectoryName ou sourceArchiveFileName est Empty, ne contient que des espaces blancs ou contient au moins un caractère non valide.

ton nom de fichier zip est erroné :
[code:1]$Archive=\&quot;c:test*.zip\&quot;[/code:1]
le caractère '*' semble être en cause.

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

  • sanched
  • Auteur du sujet
  • Visiteur
  • Visiteur
il y a 8 ans 2 mois #25146 par sanched
Réponse de sanched sur le sujet Re:decompression fichier zip
Je te remercie. Sans l'astérisque ça fonctionne. Mais ca ne m'arrange pas car le nom du fichier a dézipper change tous les jours. Il faut donc que je réfléchisse sur l'évolution du nom du fichier.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 8 ans 2 mois #25147 par Arnaud Petitjean
Salut !

Sinon au lieu d'écrire \&quot;en dur\&quot; le nom de ton fichier dans ton script tu n'as qu'à d'abord récupérer le fichier le plus récent avec la commande Get-Childitem.

Du genre :
[code:1]
Get-ChildItem C:\Temp -File | Sort-Object -Property LastWriteTime -Descending | Select-Object -First 1
[/code:1]

Arnaud

MVP PowerShell et créateur de ce magnifique forum :-)
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.040 secondes
Propulsé par Kunena