Bash « Phenix-Blog - Ce que je ne brûle pas a déjà brûlé.

Archive pour le mot-clef ‘Bash’

GiftoPng.sh

Jeudi 16 juillet 2009

Bonjour à tous, cher lecteur que je n’ai pas,

La vallée des larmes consomme des tonnes d’images .gif. Le format GIF était le premier a gérer la transparance des images. Depuis on a beaucoup mieu: le PNG.

Avec une tonne d’image GIF je devais trouver un moyen de les convertir rapidement, et la, on admir la puissance de BASH. En l’utilisant avec la librairie imagemagick, j’ai crée un petit script qui convertit à la volé un répertoire (et les sous répertoire ;) )

#Ce script converti vos images gif en png
#N'oublier pas de le modifier ;) , la flemme de faire des arguments XD
#!/bin/bash

for i in `find CHEMIN DU DOSSIER A PLACER ICI -name '*' | sed -e "s/.gif$//g"`
  do
    echo $i
    convert $i.gif $i.png
done

Ultra basique mais efficace !


				

Savemebash.sh

Mercredi 14 janvier 2009

http://www.codingmonkeys.de/subethaedit/images/inline/terminal.pngMa première résolution pour 2009 étais de ne pas commencer a faire du BASH, qui est un langage de programmation spécial sous linux, et ce afin de paraître moins GEEK. Cette résolution n’a pas tenu 3 minutes.

Pour ceux qui ne le savent pas, sous linux, à la différence de Windows, on dispose d’une interface en ligne de commande surpuissante. Bien maîtrisé, cette ligne de commande est plus rapide que n’importe quelle interface graphique. Parfois, quand on recherche une fichier par exemple, cela peu aller plus vite de le faire via les commandes que via l’explorateur de fichier.

Il y a beaucoup de commande, des tonnes, si bien qu’on écrit énormément. Les Linuxiens on donc inventé le BASH, une sorte de langage de programmation destinée à combiner et regroupé les commandes de manière logique, voir à en crée de nouvelle.

Il y a peu, je me suis dit: « Bordel, si je dois formater mon ordinateur, certes j’ai des backups, mais j’ai pas la liste des programmes installé ». Après m’être renseigné, j’ai découvert la solution, mais les commandes sont particulièrement difficile à retenir. J’ai donc créé un script BASH pour automatiser les sauvegardes !

Le voici:

#SaveMeBash version 0.1
#Fichier bash à sauvegarder dans savemebash.sh
#!/bin/bash

echo « SaveMeBash version 0.1″
echo « Script crée par Phenix »

case $1 in
#Exporte la liste des packet installer sur le pc.
« export »)
cd $2 #On ce place dans le répertoire de sauvegarde
dpkg –get-selections > mes_paquetages #On sauve
echo « Export terminé. »
;;
#Install une liste de packet.
« install »)
dpkg –set-selections < $2
sudo apt-get dselect-upgrade
echo « Installation terminé. »
;;
esac

Ce script prend en compte 2 paramètres: le premiers est le type d’action à faire: export ou install, pas besoin d’expliquer à quoi elles servent, les noms sont significatifs.

Ensuite, vous devez mettre le chemin absolu vers l’endroit à exporter la liste des packets ou bien si vous installez, le chemin absolu vers la liste des packets. Simple non ?

Par exemple:

phenix@spectre:~/Bureau$ ./savemebash.sh export /home/phenix/backup_packet/

Cette commande va sauvegardé la liste des packets ainsi qu’une sauvegarde du script dans /home/phenix/backup_packet/

Autre exemple:

phenix@spectre:~/Bureau$ ./savemebash.sh install /home/phenix/backup_packet/mes_paquetages

Cette commande va installer la liste des packet sur l’ordinateur, toutes fois cela demandera le mot de passe root pour le faire.

On peux certainement améliorer comme, par exemple sauver, aussi le source.list pour les dépots et la liste des packets dans un .zip, mais ce sera pour la prochaine version ;)