Pour vérifier la durée de lecture des fichiers audio, j'utilise le script suivant :
#!/bin/bash
for dir in $(find . -type d); do
cd $dir
for file in *.ogg *.wav *.mp3
do
duration=$(ffprobe "$file" 2>&1 | awk '/Duration/ { print $2 }')
echo -e "$duration\t$file"
done | sort -n
cd - > /dev/null
done
Si les noms des répertoires lus de manière récursive ne contiennent pas d'espaces, cela fonctionne parfaitement.
Lorsqu'il y a un espace dans le nom du répertoire, la première et la deuxième partie sont séparées dans la variable $dir, donc...
- dir 1
devient
- dir
y
- 1
Malheureusement, mes connaissances en matière de script sont insuffisantes, et je serais donc extrêmement reconnaissant si quelqu'un pouvait m'indiquer la bonne direction pour que le nom complet du répertoire soit transmis à la variable.
Merci beaucoup,
James.