Just Another Geek!/ blog/ posts/ Charge moi comme une mule

Faisons une constation assez simple : si votre lecteur portable (tournant sous Rockbox bien évidemment) a un disque de grande capacité, vous l'avez chargé une fois et vous tournez avec la même musique depuis maintenant 4 mois car vous avez la flemme de faire le DJ.

On va donc emprunter une fonctionnalité qui parait-il se trouve sur Itunes : remplir son lecteur avec des fichiers complétement aléatoires.

Ce qui donne le script (zsh) suivant :

#! /bin/zsh

setopt extendedglob
MUZBUS="\/media\/muzbus"
MUSIC="/music"

muzfiles=($MUSIC/**/*mp3(.))
fillme=$(df "${(Q)MUZBUS}" | awk -F" " "/${MUZBUS}/ { print \$4*1024}")

zmodload -F zsh/stat b:zstat
i=0

while [ "$fillme" -gt "0" ]; do
    rndfile="$muzfiles[(($RANDOM % $#muzfiles))]"
    size=$(zstat +s "$rndfile")
    fillme=$((fillme - size))
    print -l -- "$i -- $rndfile"
    cp -- "$rndfile" "${(Q)MUZBUS}/music/"
    ((i++))
done

Attention ! Ne lançez pas ce script sous Debian, ils ont quelques problèmes d'aléa :)