Compressez et divisez des fichiers dans l'explorateur de fichiers

25

Si vous cliquez avec le bouton droit sur un fichier dans Nautilus et sélectionnez Compresser, vous obtenez une boîte de dialogue dans laquelle vous pouvez choisir un format de compression et un nom de fichier. Si vous cliquez sur Avancé, il existe des paramètres pour diviser et compresser le fichier, mais il est désactivé / insensible. Comment se fait-il et comment activer ces fonctionnalités?

Edit: Dans une réponse ci-dessous, il a été suggéré que cela avait quelque chose à voir avec rar. Mais je l'ai installé, et je ne reçois pas les options de fractionnement.

Jo-Erlend Schinstad
la source
Où est «compresser» ont-ils supprimé cette fonctionnalité?
Non, juste au-dessus des propriétés.
Jo-Erlend Schinstad

Réponses:

18

Seuls certains outils d'archivage prennent en charge le fractionnement. L'un d'eux est RAR - package rar(mais c'est un shareware et vous devez l'acheter après 40 jours - Shareware dans les référentiels Ubuntu? (RAR) ) et un autre est par exemple 7zip - package p7zip-full. Vous devez en installer un (je suggère 7zip car il est totalement gratuit).

Vous pouvez également créer une archive sigle puis la diviser en parties à l'aide de la splitcommande (ou HJSplit for GUI).

Vojtech Trefny
la source
2
lorsque j'ai installé p7zip, je pouvais diviser le fichier si je choisis 7z. Si j'installe p7zip-full, je peux également le protéger par mot de passe. À cet égard, ma question est en quelque sorte résolue. Mais je ne peux toujours pas sélectionner rar.
Jo-Erlend Schinstad
Et avez-vous rarinstallé le package ? Les packages unraret unrar-freesont uniquement destinés à la prise en charge de la décompression RAR.
Vojtech Trefny
En ce qui concerne plusieurs zipfichiers, 7-Zip dans Wine / Playonlinux semble le moyen le plus simple (comme j'ai échoué à essayer la zipcommande dans le but indiqué, comme indiqué ici ; une telle commande, en cas de succès, pourrait ensuite être ajoutée au menu contextuel du gestionnaire de fichiers) . Créer un gros zip puis l'utiliser hjsplitpour le fractionner, comme indiqué ci-dessus, est un chemin à parcourir (les fichiers zip résultants peuvent être extraits directement en tant que fichier non archivé d'origine), mais le fractionnement d'une archive semble une procédure beaucoup plus lente que le multi-fichier direct l'archivage.
En examinant les zipfichiers dans ce contexte, il semble que la zipcommande puisse être utilisée pour créer des archives zip à plusieurs volumes, seulement que les résultats ne sont pas très utiles, car l'archive zip multi-fichiers ne peut pas être extraite directement, mais doit être composée comme un fichier via une seconde commande avant extraction: plus ici et ici . Il splitest préférable de créer une archive puis de la diviser avec .
8

Pour activer l'option de fractionnement, sélectionnez .rar dans la liste déroulante d'extension de fichier.

entrez la description de l'image ici

aneeshep
la source
4
Je ne peux pas sélectionner rar, même si j'ai installé unar.
Jo-Erlend Schinstad
2
@ Jo-ErlendSchinstad, vous devez d'abord installer rar: apt-get install rar. J'espère que ce commentaire tardif pourra aider les autres.
Fernando Kosh
La sélection a 7zégalement fonctionné pour moi.
1

Essayez de remplacer rar par non-libre ou l'inverse.

Cela peut être fait simplement

sudo apt-get install rar unrar-free
PvdL
la source
Cela ne vous permet pas de créer des fichiers rar ... seulement de les extraire.
Cerin
Comme l'a dit dans un commentaire de Fernando Kosh, rarest également nécessaire; sudo apt-get install rar. La sélection a 7zégalement fonctionné pour moi.
1

Considérant le cas spécifique des fichiers ZIP multi-segments ,

c'est une réponse complémentaire à la principale .

Comme déjà indiqué dans la réponse principale, seuls certains outils d'archivage prennent en charge le fractionnement, et l'interface graphique principale ne semble pas capable de créer des archives multi-segments au zipformat. Des formats alternatifs peuvent être utilisés cependant, à savoir raret 7z.

De plus, seuls certains outils peuvent extraire des fichiers zip multi-segments, tels que ceux discutés ici: à ce sujet, voir la note de fin de cette réponse.

Comme la question aborde spécifiquement la question de la gestion de l'archivage à partir du menu contextuel du gestionnaire de fichiers , j'ai examiné certaines commandes qui pourraient atteindre l'objectif même pour les zipfichiers: ces commandes, en cas de succès, pourraient ensuite être facilement ajoutées au gestionnaire de fichiers comme entrées du menu contextuel.

Compte tenu de l' zipoutil, des archives multi-segments peuvent être créées directement avec une commande comme zip my_archive.zip -r <file> -s 20971519(plus de détails sous cette question ), mais elles ne sont pas du tout utiles car elles ne sont pas prêtes à être extraites (besoin d'une zip -s 0commande supplémentaire pour créer un grand 1- archive extractible de fichier - comme décrit ici ) et cette limitation ne peut être évitée. L'envoi d'une telle archive multi-segments à quelqu'un qui ne le sait pas est inutile.

Comme déjà suggéré dans la réponse principale, une autre façon consiste à compresser le fichier, puis à diviser l'archive à un fichier avec split (ou l' hjsplitinterface graphique). (J'ai testé l'interface graphique et je l'ai trouvée extrêmement lente, tandis que pour le menu contextuel, l'interface graphique n'est pas nécessaire.)

L'idée est d'ajouter au menu contextuel du gestionnaire de fichiers une entrée qui, en un seul clic,

  1. compresser les fichiers sélectionnés en un seul zip fichier,
  2. diviser le fichier zip en parties de la taille maximale spécifiée, et
  3. supprimez-le afin de ne conserver que l'archive multi-fichiers.

J'ai donc testé avec Thunar et une action personnalisée avec ces trois commandes connectées par &&:

zip -j my_archive.zip %F && split -b 20m my_archive.zip split.zip && rm my_archive.zip

(Cela doit être appliqué à un ou plusieurs fichiers sélectionnés, mais pas aux répertoires; pour appliquer aux répertoires, l' zip -roption est nécessaire:

 zip -r -j my_archive.zip %F && split -b 20m my_archive.zip split.zip && rm my_archive.zip

)

  • -jreprésente une option pour zip"junk the path": contrairement à une commande de terminal contenant le chemin complet du ou des fichiers à archiver, une commande de menu contextuel qui utilise %Fpour les fichiers sélectionnés ajouterait à l'archive un dossier dans -la structure des dossiers sauf si elle -jest utilisée; (source: créer un zip - ignorer la structure du répertoire );

  • my_archive.zipest le nom personnalisé de l'archive non encore divisée; la splitcommande lui sera appliquée, puis la première sera supprimée avecrm

  • %Fpeut être utilisé dans une action personnalisée Thunar afin de compresser plusieurs fichiers en tant que zip; alternativement, %fdoit être utilisé pour la sélection d'un seul fichier;

  • -b 20mreprésente la taille des parties d'archive distinctes créées par splitcomme indiqué ici ;

  • split.zipest une spécification qui n'est pas nécessaire; c'est le nom personnalisé de l'archive multi-fichiers finale, cela donnerait quelque chose comme split.zipaa, split.zipab, split.zipac..., et sans lui la sortie sera nommée xsuivie des aafragments-suffixes:, xaa, xab, xac...etc; il existe une splitoption -dpour utiliser des suffixes numériques au lieu d'alphabet, mais cela donne une erreur (car apparemment l'extracteur attend une archive ZIP multi-segments lorsqu'il voit un suffixe numérique - comme suggéré dans une conversation privée par Stephen Kitt ;

  • rmappliqué au my_archive.zipfichier ne nous laissera que l'archive multi-segments souhaitée.


Remarque:

Pour que l'archive multi-zip résultante soit extraite, un outil qui prend en charge les aaarchives segmentetd est nécessaire , comme file-rollersous Linux et 7-Zip sous Windows.


la source
-1

L'utilisation de p7zip-full, comme l'a suggéré Vojtech Trefny, fonctionne, mais ne m'a pas permis de choisir rar comme méthode de compression. Irar non plus. Cependant, l'installation du package "rar" présente cette option, et si vous ouvrez Advanced, toutes les options sont sensibles.

Jo-Erlend Schinstad
la source