#!/bin/bash # Ceci peut se faire avec ls -l suivi d’un cut au lieu d’une playlist, qui contient une liste de scripts finissant par .sh if [ -f playlist.rc ];then { playlist="~/playlist.rc" } else { playlist="/etc/playlist.rc" } fi # Calcul du nombre de fichiers, les lignes commentées dans la playlist contiennent quatre dièses nbfichiers=$(grep -v "####" $playlist | egrep -i "*[[:print:]].sh"|wc -l) # Choix du numéro fichierno=$(($RANDOM * $nbfichiers / 32768 + 1)) # Choix du fichier à partir de son numéro (obtenu par cat -n) fichier=$(grep -v "####" $playlist | egrep -i "*[[:print:]].sh"|cat -n | grep -w "$fichierno" | cut -f2) echo "And the winner is $fichier"
tableau_fichier=( $(ls) ) ${tableau_fichier[($RANDOM%${#tableau_fichier[@]})]}