From 7401b012419cf0701d48512ebea89a40775d9342 Mon Sep 17 00:00:00 2001 From: Armaan Bhojwani Date: Sat, 20 Mar 2021 23:22:31 -0400 Subject: [PATCH] fmt-music: add script Flattens a directory of music. --- fmt-music | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100755 fmt-music diff --git a/fmt-music b/fmt-music new file mode 100755 index 0000000..e578a03 --- /dev/null +++ b/fmt-music @@ -0,0 +1,21 @@ +#!/usr/bin/sh -e + +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') + + 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 + + o="$o $(echo -n $(basename "$newline") | cut -d " " -f ${num}-)" + cp -v "$line" "${2:-.}/$o" + done -- 2.39.2