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.
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 ».
1 réponse
[…] Ceci est une mise à jour de mon script de Compression. […]