Comment créer un fichier zip au même format que celui du Finder & # 8220; Compresser & # 8221; élément du menu?

StackOverflow https://stackoverflow.com/questions/107903

  •  01-07-2019
  •  | 
  •  

Question

Sous Mac OS X, vous pouvez créer une archive zip à partir du Finder en sélectionnant certains fichiers, puis en sélectionnant "Compresser". depuis le menu contextuel ou le menu Fichier. Malheureusement, le fichier résultant n'est pas identique à l'archive créée par la commande zip (avec les options par défaut).

Cette distinction est importante pour au moins un service exploité par Apple, qui n'accepte pas les archives créées avec la commande zip . Le fait de créer des archives manuellement m’empêche d’automatiser entièrement mon processus de génération de versions.

Comment créer une archive zip au format correct dans un script shell?

EDIT: Depuis que je pose cette question il y a longtemps, j'ai compris que la différence essentielle entre idem et zip est la façon dont ils traitent les liens symboliques: en raison de la signature du code à l'intérieur d'un ensemble d'applications contenant un lien symbolique, il doit être conservé en tant que lien et non stocké en tant que fichier normal. idem le fait par défaut, mais pas zip (l'option -y est requise).

Était-ce utile?

La solution

Utilisez l'outil de ligne de commande idem comme suit:

ditto -ck --rsrc --sequesterRsrc folder file.zip

Voir la . pour plus.

Autres conseils

J'ai un script ruby ??qui crée pour moi l'iPhone App Store, mais les zips générés ne sont pas acceptés par iTunes Connect. Ils étaient acceptés si j'utilisais Finder & Comp; Compress " fonction.

La réponse de millenomi m’a été proche, mais c’est cette commande qui a finalement fonctionné. iTunes Connect a accepté ma version. L'application a été approuvée et peut être téléchargée sans problème. Elle est donc testée.

ditto -c -k --sequesterRsrc --keepParent AppName.app AppName.zip

man idem déclare:

 The command:
       ditto -c -k --sequesterRsrc --keepParent src_directory archive.zip
 will create a PKZip archive similarly to the Finder's Compress functionality.

avis --keepParent

L'indice est dans la balise 'automation'.

Créez une action dans Automator.app qui utilise l'action "Créer une archive", appelez-la à partir de la ligne de commande (voir "automator").

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top