Bonsoir à tous,

J'ai essayé par tous les moyens de de zipper un dossier sous, je vous explique :

J'ai un certain nombre de dossiers zippés et ils contiennent tous des fichiers directement dans le dossier zippé et quand je fais :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
use Archive::Zip qw( :ERROR_CODES :CONSTANTS );
$a="";
@progc = <*.zip>;
foreach (@progc) 
{
$a=$_;
print("$a\n");
$zip = Archive::Zip->new();
$zip->read( "$a");
@members = $zip->members();
$b=substr($a,0,length($a)-4);
foreach $element(@members)
{
  print "$element\n";
  $zip->extractMember($element);
}
}
Ce script de zippe directement à la racine, je veux donc de zipper sous, je vous donne un exemple :
J'ai l'arborescence suivante :
dans le dossier A il y a B.zip qui contient c.xls et d.xls, mon script me donne :
dans le dossier A il y a B.zip et c.xls et d.xls, alors que moi je veux obtenir ce résultat :
dans le dossier A il y a B.zip et le dossier B, dans le dossier B je trouve c.xls et d.xls.

Est-il possible d'atteindre ce but ?

Merci de m'aider.

H.