Compression en multi-dossiers


Il m’arrive régulièrement de lire des scans de manga. Pour cela j’utilise MComix qui permet de gérer ma collections et peut lire les images compressées au format ZIP, RAR, 7Zip, TAR, CBR et CBZ.

 

mcomix

Il est très fréquent lorsque l’on récupère des scans que nous nous retrouvions avec plusieurs dossiers comprenant des fichiers images. Les logiciels tels que MComix lisent très bien ces dossiers mais il est plus facile de gérer une archive plutôt que de nombreux fichiers. Voila pourquoi j’ai réalisé un petit script grâce a zenity qui permet de compresser plusieurs dossiers séparément. Le script va compresser un à un chaque dossier d’un répertoire.

  • Pour voir ce que ça donne ouvrez un terminal (ctrl + alt + t) et entrer les commandes qui suivent:
 cd ~/.gnome2/nautilus-scripts

depuis Ubuntu 13.04 le répertoire Nautilus-Script ce situe dans le dossier .local, il faut donc taper cette commande :

 cd ~/.local/share/nautilus/scripts
 sudo gedit compression
    • Ensuite copiez-coller le script :

 

#!/bin/bash

#Création du menu de sélection
Selection=$(zenity --list \
	--title=Compression \
	--text "Choisissez votre format de compression" \
	--radiolist \
	--column=Choix --column="Choississez le format" --column=Description \
	--height=225 \
	--width=580 \
TRUE "Créer archive(s)’cbz’" "Format utile pour la lecture de Comics/Mangas" \
FALSE "Créer archive(s)’zip’" "Format trés répandu" \
FALSE "Créer archive(s)’tar.bz2′" "Format de compresion du monde libre");

# Compresser les dossiers en cbz
if [ "$Selection" == "Créer archive(s)’cbz’" ]
then
ls -A | sed 's/\(.*\).*$/zip -r "\1.cbz" "&" /' | sh | zenity --progress --pulsate --title " Compression " --text " Création des archives en cbz "
fi

# Compresser les dossiers en zip
if [ "$Selection" == "Créer archive(s)’zip’" ]
then
ls -A | sed 's/\(.*\).*$/zip -r " \1.zip " " & " /' | sh | zenity --progress --pulsate --title " Compression " --text " Création des archives en zip "
fi

# Crompresser les dossiers en tar.bz2
if [ "$Selection" == "Créer archive(s)’tar.bz2′" ]
then
ls -A | sed 's/\(.*\).*$/tar cvf " \1.tar.bz2 " & " /' | sh | zenity --progress --pulsate --title " Compression " --text " Création des archives en tar.bz2 "
fi
      • Enregistrez puis fermez.
      • Accordez les permissions d’exécution au fichier :
 sudo chmod +x compression

Il ne vous reste plus qu’à effectuer un clic droit dans un répertoire et de choisir compression dans le menu « Script ».

compression

Vous aimerez aussi...

1 réponse

  1. 5 mars 2015

    […] Ceci est une mise à jour de mon script de Compression. […]

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*