m3u für alle Albumordner erstellen Skript

Steev

(ツ)
Registriert
15 Juli 2013
Beiträge
22.194
Ort
zurück ins Dorf
Hi,
ich habe hier ein Skript, welches für alle Albumordner eine Wiedergabeliste m3u erstellt. Allerdings wird in den Namen auch der Überordner geschrieben und es sieht dann so aus: "Überordner - Albumordner.m3u". Ich möchte allerdings nur im Namen den Albumordner, sprich "Albumordner.m3u". Wie muss das Skript umgeschrieben werden, damit ich zu dem Ergebnis komme?
[src=text]#!/bin/bash
INPUTDIR="$1"
cd "$INPUTDIR"
INPUTDIR="$PWD"
cd "$OLDPWD"
filedir=""
OLDIFS="$IFS"
IFS=$'\n'
for filepath in $(find $INPUTDIR -type f -name '*.mp3' -print | sort); do
IFS="$OLDIFS"
oldfiledir="$filedir"
filedir="$(dirname "$filepath")"
filename="$(basename "$filepath")"
if [ "$oldfiledir" = "$filedir" ]; then
echo $filename >> "$filedir/$(echo $filedir | awk -F/ '{ print $(NF-1) " - " $NF }').m3u"
else
rm -f "$filedir/$(echo $filedir | awk -F/ '{ print $(NF-1) " - " $NF }').m3u"
echo $filename > "$filedir/$(echo $filedir | awk -F/ '{ print $(NF-1) " - " $NF }').m3u"
fi
done
exit[/src]
 
Scheint es reicht wenn du in den Zeilen 15, 17 und 18 folgendes abänderst:

[src=text]"$filedir/$(echo $filedir | awk -F/ '{ print $(NF-1) " - " $NF }').m3u"[/src]

einfach das

[src=text]$(NF-1) " - "[/src]

löschen.
 
Jupp, das sollte reichen. Ist für meinen Geschmack ganz schön verworren geschrieben, aber gut...

Kleiner Tipp noch: Mir hat man am Anfang beigebracht, dass Variablen immer in Capitals geschrieben werden, der Übersicht halber. Würd ich dir auch empfehlen.
 
Zurück
Oben