Steev
(ツ)
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]
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]