GNU/Linux >> Tutoriels Linux >  >> Linux

GZip ne produit pas le même résultat compressé sur macOS vs Linux

Notez que l'algorithme de compression (Deflate) dans GZip n'est pas strictement bijectif. Pour élaborer :pour certaines données, il existe plusieurs sorties compressées possibles en fonction de l'implémentation algorithmique et des paramètres utilisés. Il n'y a donc aucune garantie qu'Apple GZip et gzip 1.6 renverront le même compressé production. Ces sorties sont toutes des flux GZip valides, la norme garantit simplement que chacune de ces sorties possibles sera décompressée aux mêmes données d'origine.


Le format devrait être très stable, mais voir sa description. Il contient un champ pour l'ID du système d'exploitation. Évidemment, cela sera différent pour MacOS et Linux et FreeBSD et...


Le format Gzip est standard, la mise en œuvre - pas nécessairement. Wikipedia répertorie au moins 5 implémentations indépendantes libres/oss et il en existe également des propriétaires. Apple affiche clairement une chaîne de version différente.

Le format et l'algorithme permettent tous deux une grande liberté et de nombreux choix de conception qui sont soit une question de goût et/ou fonctionnent mieux dans différents cas d'utilisation.

Voir les fichiers Zip :historique, explication et mise en œuvre

Je m'attendrais généralement à ce que les résultats soient les mêmes entre différentes implémentations uniquement pour un petit pourcentage de petits fichiers.


Linux
  1. Le Résultat De Ls * , Ls ** Et Ls *** ?

  2. Lire et écrire dans le même fichier sous Linux sans l'écraser ??

  3. Différentes distributions Linux partageant le même dossier /home ?

  4. La commande locate sous Linux

  5. Quel est l'équivalent de la commande Linux sudo fdisk -l sous MacOS ?

6 distributions Linux inspirées de l'aspect et de la convivialité de macOS

Quelle est la différence entre les noyaux macOS et Linux

Qu'est-ce que le Shell sous Linux ?

Comment afficher le contenu d'une archive ou d'un fichier compressé sous Linux

La commande timer sous Linux

Comment utiliser la commande Gzip sous Linux ?