Coup de bash sur les alias
Par Jean-Seb le mardi 23 décembre 2008, 23:05 - Linuxeries - Lien permanent
Le blog n'est pas abandonné!
Un (tout) petit billet pour vous le prouver, fidèles lecteurs anonymes et
desespérés.
Aujourd'hui, les alias.
Votre shell et les alias
- Si vous utilisez un shell Unix, il y a fort à parier que celui-ci supporte les alias.
- Un alias est un raccourci pour une commande.
- Par exemple,
fusck
pourrait être un alias pourrm -rf /
. (ceci est un exemple. Ne faites pas ça chez vous, les enfants).
- Par exemple,
.bashrc et les alias
- Bash ne déroge pas à la rêgle, en tant que shell le plus répandu.
- Ce n'est pas le meilleur, mais c'est celui que j'utilise.
- Jetons un coup d'oeil dans son fichier de configuration,
.bashrc
export PS1='\w\$ ' alias ls="ls --color -hs" export LESSCHARSET='latin1'
- Il n'y a pas grand chose, mais je l'aime bien.
- On remarque un alias sur ls
- Cet alias est incorrect, et pourtant, je le traine depuis un bout de temps (depuis mes débuts sous Linux en fait.)
Que fait ls --color -hs
- --color sert à coloriser la sortie (ça se paramètre, mais ce n'est pas le sujet ici).
- -hs : size , human readable (la taille en octet est convertie dans une unité plus parlante).
Que fait la police ?!
- La grosse erreur ici consiste dans les paramètres.
- Vous allez me dire que c'est ennuyeux, vu qu'une commande aliasée sans paramètres, ça ne sert pas à grand chose.
- Pour corriger:
- --color=auto : va supprimer la coloration automatique si la commande passe à travers un pipe.
- enlever le -hs qui perturbe aussi les pipes.
Testons
- sans les modifications du .bashrc :
~$ ls / | head -1 total 56K
- avec les modifications du .bashrc:
~$ ls / | head -1 bin
Et si on veut garder ses alias pourris ?
- Deux solutions:
- appeller la commande avec le path complet:
/bin/ls - préfixer la commande avec un slash:
\ls
- appeller la commande avec le path complet:
- Ces deux méthodes empêche l'aliasing par le shell.
- Il vaut mieux cependant créer de nouvelles commandes pour les alias paramétrés.
- Ex:
alias lls='ls --lh'
La morale de cette histoire
- La morale de cette histoire, c'est qu'il faut pas gonfler Gérald Lambert
quand il aliase son shell.
- C'est la morale de ce billet, moi j'la trouve chouette, pas vous ? Ah bon.
- Sur ce: joyeux noel, paix dans le monde, et à l'année prochaine.