Astuces Bash

linux-bash

Voici quelques petites commandes dont je me suis servis recemment.

Compter le nombre de lignes de code d’un projet php :

on compte le nombre de lignes de tout les fichiers php (on redirige la sortie d’erreur car « wc » engendreras une erreur si « find » a trouvé un répertoire), on supprime les espaces superflux, on recupère la première colonne, et on garde la dernière ligne, le total. Il est bien sur, possible de l’améliorer, en excluant les lignes vide ou les commantaires par exemple, à vu de nez je dirais avec « cat -s » et « egrep » avec la regExp qui va bien.

1
wc -l `find ./ -name "*.php"` 2> /dev/null | tr -s ' ' | cut -d' ' -f2 | tail -n 1

« Decompresser » une CSS : Pour gagner un peu en rapidité (poid et temps de parsage) les CSS sont parfois « compresser », c’est à dire que tout les caractères non essentiel sont retirés, comme les sauts de ligne et les tabulations. Plus rapide certe, mais évidement tres peu « human readable ». Au cas ou vous n’auriez pas l’original d’une version compressé, voila de quoi vous dépanner ! Prennons par exemple la CSS d’un composant de la librarie Yahoo! (YUI) : editor.css

1
cat editor.css | sed s/'{'/' {\n\t'/g | sed s/';'/';\n\t'/g | sed s/'\t}'/'}\n\n'/g > editorClean.css

Avant : 7lignes – 23Ko, Apres : 1227 lignes – 25Ko (lisible et indenté svp !)

Debugger un script : Debugger un script bash n’est pas forcément des plus pratique, alors voici une commande qui vous changera la vie : « set -x », placé au debut du script, bascule l’éxécution en mode debug et affiche le resultat de toutes les commandes executées, afin d’identifier le problème.

Un commentaire

Répondre