Je dois mettre un fichier zip à la disposition de tous les visiteurs de mes utilisateurs Windows. J'ai donc créé naïvement un fichier zip avec la commande zip Unix (appelons-le madeinlinux.zip).
Il s’ouvre correctement avec WinRar ou Winzip, mais ceux de mes utilisateurs qui utilisent le traitement de fichiers zip Windows standard rencontrent des problèmes lorsqu’ils essaient de le décompresser. (Windows XP)
J'ai compressé les mêmes données à l'aide du mécanisme zip intégré à Windows et, du point de vue de Linux, je ne vois aucune différence dans le type de fichier:
$ file madeinlinux.zip : Zip archive data, at least v2.0 to extract
$ file madeinwindows.zip : Zip archive data, at least v2.0 to extract
Ils doivent être spécifiques à un fichier zip compatible Windows.
Est-ce que quelqu'un sait quoi?
Réponses:
Essayez avec:
-9
Indique la vitesse de compression la plus lente (compression optimale, ignore la liste des suffixes)-y
Stocker les liens symboliques en tant que tels dans l’archive zip, au lieu de compresser et de stocker le fichier référencé par le lien-r
Déplacement récursif de la structure de répertoires-q
Mode silencieuxla source
-r
) et-r
vous permet de prendre tout le contenu du dossier7zip est un outil de compression open source fonctionnant sous Linux, FreeBSD, Mac OS X, BeOS, DOS, Amiga et Windows.
Je le recommande fortement en fonction de la version Windows.
Elle supporte
la source
La seule chose qui semble pertinente est-ce
mais lisez "man zip" sur votre système avant de partir ailleurs ...
la source
zip -Z
définit l'option de compression.-Z store
est le plus trivial, car il ne compresse pas du tout. Ceci est utile lorsque vous utilisezzip
une alternativetar
ou un dépannage. Dans ce cas, vous devriez essayer de voir si une archive non compressée est utilisable à partir de Windows. Si cela est utilisable, vous savez que vous devrez choisir une option de compression autre que celle par défaut.la source
En plus de ce que d’autres ont suggéré, il est important de porter une attention particulière à vos noms de fichiers et de répertoires car Windows n’apprécie pas nécessairement le chemin et les noms de fichiers Linux. Parfois, il leur échappe également différemment lors de la compression. Les exemples sont nombreux, mais surtout les fichiers point (. Et ..), les fichiers ne contenant que des différences de casse (name.txt et NAME.txt), les chemins de fichier absolus (/tmp/file.txt) . Certains autres caractères autorisés dans les noms de fichiers sous Windows peuvent poser des problèmes lorsque l'Explorateur Windows est utilisé pour ouvrir des fichiers. Dans mon cas, ":" le personnage a été décisif, mais il a fallu beaucoup de travail pour le découvrir.
Donc, avant de continuer à utiliser de nombreux paramètres, je vous suggère de suivre une procédure simple:
Localisez le dossier ou le fichier de votre fermeture éclair.
lancer: zip -9 -r -k zip-noms- modifiés.zip / chemin / vers / votre / dossier
Si cela fonctionne, il vaudrait peut-être mieux supprimer les caractères qui ont été supprimés par l'option -k de vos noms de fichiers / répertoires, essayez de compresser normalement. Notez que certains paramètres tels que -k ont des effets secondaires. Dans ce cas, -k est en contradiction avec l'option -q (pour les liens sym).
De plus, l'option -k peut rendre vos noms de fichiers illisibles. Dans mon cas, mes fichiers ont été nommés en fonction du moment de la création (par exemple, 10: 55: 39.pdf) pour faciliter la localisation de la notice requise dans les archives, mais l'option -k l'a convertie en 105539.pdf, ce qui rend les données difficilement lisibles par les utilisateurs. J'ai donc changé les noms en 10_55_39.pdf qui s'ouvre sous Windows sans utiliser l'option -k mais reste lisible.
la source
Avait un problème similaire récemment avec les fichiers produits à partir d'un script Perl. Il a été constaté que le zip zip natif de Windows (testé sous Windows 7 uniquement) traitait de manière incorrecte les chemins avec une barre oblique et affichait un fichier zip vide. La solution consistait à supprimer la barre oblique avant d'ajouter des fichiers. Peut-être que certaines versions de la commande zip linux stockent des chemins de fichiers avec des barres obliques.
la source
Voici un script python que j'utilise pour compresser certains fichiers. Il a été testé sur Ubuntu et Vista. Un zip généré sur Ubuntu s'ouvre avec la fermeture à glissière Vista.
Je pense que j'avais un problème similaire dans le passé et que c'était parce que le format zip n'était pas ZIP_DEFLATED. Je ne suis pas sûr. Je vais vérifier ça.
J'espère que ça aide
la source
Il y a probablement un problème dans votre transfert de fichier de Linux à Windows. Si vous utilisez FTP, essayez de définir un transfert binaire (commande bin sous Windows avant le transfert de vos fichiers de Linux à Windows).
la source