lundi 5 mars 2012

Améliorer l'output de df

La commande df nous renseigne sur la taille, l'occupation et le le point de montage des partitions montées.
Malheureusement le formatage du résultat est déficient en ce sens que les titres des colonnes sont mal disposés:


Ce dysfonctionnement ne se produit pas dans un environnement de langue anglaise.
Nous aimerions obtenir un résultat satisfaisant sans pour autant modifier notre environnement.
Avant de donner la solution au problème, procédons à une petite expérience.
Plaçons dans ~/bin le script quisuisje:
#!/bin/bash
echo $moi
que nous avons rendu exécutable (chmod +x ~/bin/quisuisje)
Si ~/bin n'existe pas, il convient auparavant de le créer:
mkdir ~/bin
et de le placer dans le PATH:
PATH="$HOME/bin:$PATH".
Nous sommes maintenant prêt à réaliser l'expérience:


La variable moi est d'abord initialisée en tant que variable d'environnement avec la valeur 'toto' (contenue dans USER).
Ensuite elle prend la valeur 'riri' mais uniquement au niveau du processus dans lequel tourne quisuisje. Au niveau du shell bash la valeur est inchangée.
Nous avons donc notre solution:


Bien sûr les titres des colonnes sont en anglais, mais c'est quand même largement compréhensible
Nous pouvons même utiliser un alias:


Cette alias sera défini de manière permanente si la définition en est placée dans le fichier ~/.bashrc