reviewer
122
modifications
Aucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 28 : | Ligne 28 : | ||
<br/> | <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 : | 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 : | ||
NBRE_COWS=`ls - | #!/bin/bash | ||
COWS_RANDOM= | # on place le nombre total de fichiers *.cows dans NBRE_COWS | ||
COW_NAME=`ls - | NBRE_COWS=`ls -1 /usr/share/cowsay/cows/ | wc -l` | ||
# on génère un nombre aléatoire compris entre 1 et NBRE_COWS | |||
COWS_RANDOM=$(($RANDOM % $NBRE_COWS + 1)) | |||
# là il faut comprendre la syntaxe awk : | |||
# NR correspond au numéro de la ligne en cours de traitement par awk. | |||
# NF correspond au dernier champs de la ligne traitée (soit le nom du fichier cow). | |||
# Le NR == COWS_RANDOM_AWK et un critère de sélection conditionnel qui dit : | |||
# "je n'execute l'action {print NF} que si le numéro de ligne est égal à COWS_RANDOM_AWK" | |||
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`" | cowsay -f $COW_NAME "`fortune -s`" | ||
''si quelqu'un trouve une solution plus simple et sans dépendance je suis preneur'' | ''si quelqu'un trouve une solution plus simple et sans dépendance je suis preneur'' | ||
[[Catégorie:Divers]] | [[Catégorie:Divers]] |