====== Le shell ====== Il s'agit d'un interpréteur de commandes accessible depuis une console ou un terminal. Il existe une multitude de //shells//, le plus connu étant [[http://tiswww.case.edu/php/chet/bash/bashtop.html|bash]] (il est installé par défaut sur toutes les distributions Linux). ===== Afficher un nombre aléatoire à partir d'un intervalle ===== Par exemple si notre intervalle est [1; 20] : Sous les **BSD**, il existe un commande particulière ''jot''. jot -r 1 1 20 Sous Linux, il n'existe pas de telle commande, on peut faire appel, par exemple, à [[http://fr.wikipedia.org/wiki/Awk|Awk]]. echo | awk 'srand() {print 1 + int(rand() * 20)}' Dans le paquet [[http://www.gnu.org/software/coreutils/|coreutils]] (généralement installé par défaut sous Linux), il existe un utilitaire, qui s'appelle : ''shuf''. Pour obtenir un nombre « aléatoire » qui appartient à notre intervalle, la commande est la suivante : shuf - 1-20 -n 1 ===== Configurer le Korn shell ===== Sous les BSD (NetBSD, FreeBSD, et OpenBSD) on trouve ce type de //shell//. Il n'est pas évident à le configurer (sous FreeBSD, je préfère utiliser le C-shell, du moins pour l'utilisateur root). Tout (ou presque) doit être placé dans le fichier ''.profile''. Par exemple, pour l'invite de commande (le prompt): [...] export PS1='\u@\h:\w\$ ' [...] Pour l'utilisateur **root**, j'aime bien mettre cet invite en couleur (rouge de préférence), voici donc la ligne à mettre : [...] export PS1='^[[31m\u@\h:\w\$^[[0m ' [...] En fait ''^['' s'écrit avec la séquence de touches **Ctrl** + **v** suivie de **Echap**. Dans le fichier ''.kshrc'' on peut mettre tous les alias, etc. Pour que ce dernier soit lu au démarrage, il faut rajouter cette ligne dans le fichier ''.profile''. [...] export ENV=$HOME/.kshrc Sous NetBSD, et OpenBSD, voici ce que je mets dans le fichier ''.kshrc'' : # .kshrc # set -o emacs alias ls='ls -F' Pour prendre en compte immédiatement ces modifications, il suffit d'exécuter cette commande : . ~/.profile