« Cowsay et fortunes » : différence entre les versions

De Le Wiki du Forum-Debian.fr
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 27 : Ligne 27 :
''<u>'''Important :'''</u> cette commande utilise l'exécutable '''''rl''''' qui dépend du paquet '''''randomize-lines''''', il est donc nécessaire de l'installer.''
''<u>'''Important :'''</u> cette commande utilise l'exécutable '''''rl''''' qui dépend du paquet '''''randomize-lines''''', il est donc nécessaire de l'installer.''
<br/>
<br/>
Notons qu'il est possible de se passer de la dépendance '''randomize-lines''' (et même de bash) en utilisant ces quelques lignes de code toujours dans notre fichier de configuration du shell (merci à [[Utilisateur:MisterFreez|MisterFreez]] pour m'avoir épuré le code de cette idée) :
<br/>
Notons qu'il est possible de se passer de la dépendance '''randomize-lines''' en utilisant ces quelques lignes de code toujours dans notre fichier de configuration du shell (merci à [[Utilisateur:MisterFreez|MisterFreez]] pour m'avoir épuré le code de cette idée)
<br/>
Cependant '''attention''', ce qui suit n'est pas compatible avec ''csh'', ''ksh'', et ''tcsh'' :
  NBRE_COWS=$(ls -1 /usr/share/cowsay/cows/ | wc -l)
  NBRE_COWS=$(ls -1 /usr/share/cowsay/cows/ | wc -l)
  COWS_RANDOM=$(expr $RANDOM % $NBRE_COWS + 1)
  COWS_RANDOM=$(expr $RANDOM % $NBRE_COWS + 1)

Version du 21 avril 2010 à 07:11


Pour ceux qui ne connaissent pas :
cowsay est un petit programme qui affiche un dessin en ASCII d'un animal qui parle. A l'origine, cowsay n'affichait qu'une vache (d'ou son nom...), mais aujourd'hui il permet d'afficher plus ou moins ce que l'on veut grace à l'existence des fichiers *.cow
fortunes quant à lui, est un générateur aléatoire de citations, proverbes, et autres geekeries du monde irc.
Si on combine les deux, alors on se retrouve à chaque ouverture de shell avec un animal de son choix qui nous pond une citation de victor hugo, un proverbe persan, ou encore une remarque désobligeante accusant redhat de ne pas être un linux (ça c'est méchant... xD)


Voici comment faire :

# aptitude install cowsay fortunes fortunes-fr

Retrouver la liste des "cows" dispo ici : /usr/share/cowsay/cows
Ensuite, suivant votre shell (bash, ksh, csh, zsh, etc..) éditer son fichier de configuration (~/.bashrc, ~/.zshrc, etc...) et coller ces lignes à la fin du fichier :

cow_name=dragon
cowsay -f $cow_name "`fortune -s`"

Remplacer "dragon" par le nom que vous voulez (la listes des "cows" étant dans /usr/share/cowsay/cows)

Encore plus fort :
Votre "cow" toujours identique vous ennuie ? Envie que celui-ci change son déguisement à chaque ouverture de shell ? Alors remplacer la commande cowsay ci-dessus par celle-ci (un grand merci à Dunatotatos sur le forum debian-fr)

cowsay -f `ls /usr/share/cowsay/cows/ | rl | tail -n 1 | cut -d'.' -f1` "`fortune -s`"

Important : cette commande utilise l'exécutable rl qui dépend du paquet randomize-lines, il est donc nécessaire de l'installer.

Notons qu'il est possible de se passer de la dépendance randomize-lines en utilisant ces quelques lignes de code toujours dans notre fichier de configuration du shell (merci à MisterFreez pour m'avoir épuré le code de cette idée)
Cependant attention, ce qui suit n'est pas compatible avec csh, ksh, et tcsh :

NBRE_COWS=$(ls -1 /usr/share/cowsay/cows/ | wc -l)
COWS_RANDOM=$(expr $RANDOM % $NBRE_COWS + 1)
COW_NAME=$(ls -1 /usr/share/cowsay/cows/ | awk -F\. -v COWS_RANDOM_AWK=$COWS_RANDOM 'NR == COWS_RANDOM_AWK {print $1}')
cowsay -f $COW_NAME "`fortune -s`"



Spatule 20 avril 2010 à 16:06 (UTC)