]> git.armaanb.net Git - bin.git/blobdiff - fmt-music
xsel: new script
[bin.git] / fmt-music
index e578a0330e948050985899b35268893b369a9cc6..e1a3cfb6854c6bc6afa595c73ecaeac5da3d107d 100755 (executable)
--- a/fmt-music
+++ b/fmt-music
@@ -1,21 +1,22 @@
 #!/usr/bin/sh -e
+# Turns a nested hierarchy of music files into a flat one
 
 find "${1:-.}" -regex '.*\.\(mp3\|ogg\|wav\|aac\|wma\|flac\|alac\)' -type f | \
-  while read line; do
-    newline=$(echo $line | sed -E -e 's|[[:space:]]?-[[:space:]]?|_|g' \
-      -e 's/  */ /g')
+               while read line; do
+                               newline=$(echo $line | sed -E -e 's|[[:space:]]?-[[:space:]]?|_|g' \
+                                                                                                                                        -e 's/  */ /g')
 
-    o=$(echo -n $(dirname "$newline") | sed -e 's|\./||g' -e 's|/| - |g')
+                               o=$(echo -n $(dirname "$newline") | sed -e 's|\./||g' -e 's|/| - |g')
 
-    first=$(echo -n $(basename "$newline") | cut -d " " -f 1)
-    if $(echo $first | grep -Eq '^[0-9]+$'); then
-      o="$o $(echo -n "- $first -")"
-      num=2
-    else
-      o="$o -"
-      num=1
-    fi
+                               first=$(echo -n $(basename "$newline") | cut -d " " -f 1)
+                               if $(echo $first | grep -Eq '^[0-9]+$'); then
+                                               o="$o $(echo -n "- $first -")"
+                                               num=2
+                               else
+                                               o="$o -"
+                                               num=1
+                               fi
 
-    o="$o $(echo -n $(basename "$newline") | cut -d " " -f ${num}-)"
-    cp -v "$line" "${2:-.}/$o"
-  done
+                               o="$o $(echo -n $(basename "$newline") | cut -d " " -f ${num}-)"
+                               cp -v "$line" "${2:-.}/$o"
+               done