Wenn wir alle Titel in einem Ordner haben, gerne auch in Unterordnern in diesem Ordner, können wir in Linux und Apple Systemen ganz einfach so eine Datei erstellen.
Im Beispiel heißt der Ordner "Skeeves Musik" und die Playlist wird "Skeeves Playlist.m3u" heißen.
Die Kommandos sind umgebrochen, damit man sie leichter lesen kann, können aber genau so eingegeben werden.
1. Sortierte Playlist
2. Zufällige Reihenfolg
find './Skeeves Musik' -type f -name \*.mp3 |
while read mp3 ; do
echo $RANDOM:$mp3 ;
done |
sort -n |
cut -d. -f2- > 'Skeeves Playlist.m3u'
3. Erklärung
find './Skeeves Musik' -type f -name \*.mp3 sucht alle Dateien (-type f) mit Namen, die auf ".mp3" enden (-name \*.mp3) und gibt diese zeilenweise aus. Das kann dann so aussehen:
./Skeeves Musik/Yusuf _ Cat Stevens - Morning Has Broken.mp3
./Skeeves Musik/Alvin Stardust - I Feel Like Buddy Holly.mp3
./Skeeves Musik/Earth & Fire - Weekend.mp3
Das Kommando cut -d. -f2- dient dazu, den Punkt am Anfang abzuschneiden. cut -d. splitet eine Zeile an Punkten (-d.) in "Felder" auf. Und fügt die gewünschten "Felder" wieder zusammen. Mit -f2- "wünscht" man sich die Felder ab Feld Nummer 2.
Diese bereinigten Zeilen werden dann in die Playlist-Datei geschrieben.
Die zufällige Reihenfolge wird erreicht, indem wir vor jede Zeile eine Zufallszahl setzen und anschließend nach diesen Zahlen sortieren.
Kommentare 2
Neu erstellte Kommentare unterliegen der Moderation und werden erst sichtbar, wenn sie durch einen Moderator geprüft und freigeschaltet wurden.
Neu erstellte Kommentare unterliegen der Moderation und werden erst sichtbar, wenn sie durch einen Moderator geprüft und freigeschaltet wurden.
skat
Das Infotainment im ID kann übrigens mehr Formate als im Handbuch angegeben. So wird auch Ogg Vorbis unterstützt (*.ogg). Wer seine CD Sammlung verlustfrei im FLAC Format archiviert hat (*.flac), kann diese Dateien ebenfalls ohne umzuwandeln auf den USB Stick kopieren. Ditto mit Videos im MP4 (*.mp4) Format.
mathiasp
Nice to find some shell scripting in here.
This also works in the Windows Subsystem for Linux.
The random part might not work on the standard OS X shell, which does not support the special $RANDOM variable, or at least it did not when I last used it.
So if your shell does not support $RANDOM, you can use
which should work on any posix compliant system and with any shell that supports pipelining (e.g. csh, fish).
Also, you can use many media formats, I just googled it, the id.* support the following audio formats:
Use
at the start of the above command to include multiple file types.