]> gitweb.fluxo.info Git - playlister.git/commitdiff
Feat: playlist-check: can iterate over all playlists
authorSilvio Rhatto <rhatto@riseup.net>
Mon, 31 May 2021 00:41:57 +0000 (21:41 -0300)
committerSilvio Rhatto <rhatto@riseup.net>
Mon, 31 May 2021 00:41:57 +0000 (21:41 -0300)
playlist-check

index 854ca5dc4589cd91fa6a4b41b8b4219d4e268027..57cd8d2b28e33e451b6b2bf522951d957340b329 100755 (executable)
@@ -9,8 +9,24 @@ PLAYLIST="$1"
 MEDIA="/var/cache/media/noise"
 PLAYLISTS="$MEDIA/playlists"
 
+# Process
+function playlist_check {
+  local cwd="`pwd`"
+
+  cd $MEDIA
+
+  cat $PLAYLISTS/$PLAYLIST.m3u | while read file; do
+    #if [ ! -e "$file" ]; then
+    if ! ls "$file" &> /dev/null; then
+      echo "$PLAYLIST: missing file: $file"
+    fi
+  done
+
+  cd $cwd
+}
+
 # Basic syntax
-if [ -z "$PLAYLIST" ]; then
+if [ "$PLAYLIST" == "--help" ]; then
   echo "Usage: $BASENAME <playlist>"
 
   if [ -d "$PLAYLISTS" ]; then
@@ -20,17 +36,15 @@ if [ -z "$PLAYLIST" ]; then
   fi
 
   exit 1
+elif [ -z "$PLAYLIST" ]; then
+  for playlist in $PLAYLISTS/*m3u; do
+    PLAYLIST="`basename $playlist .m3u`"
+    playlist_check
+  done
+
 elif [ ! -f "$PLAYLISTS/$PLAYLIST.m3u" ]; then
   echo "No such playlist $PLAYLISTS/$PLAYLIST.m3u"
   exit 1
+else
+  playlist_check
 fi
-
-# Prepare
-cd $MEDIA
-
-# Process
-cat $PLAYLISTS/$PLAYLIST.m3u | while read file; do
-  if [ ! -e "$file" ]; then
-    echo "missing file: $file"
-  fi
-done