dam/src/print_meta_flac

29 lines
810 B
Text
Raw Normal View History

#!/bin/bash
# doc print_meta_flac {
#
# DESCRIPTION
# print_meta_flac - Prints metadata of remote flac in FIELD=VALUE; format.
#
# USAGE
# print_meta_flac </path/to/flac> [<field_1> <field_2> <...>]
#
# }
print_meta_flac() {
local FILE="${1}"; shift
local tagList=(${@})
[[ ! -f ${FILE} ]] && return 1
2018-04-06 22:40:19 +00:00
local METADATA=$(awk 'BEGIN{FS="]: ";ORS=";"}{if($1 ~ /comment\[/){print $2}}' <<< $(metaflac --list --block-type=VORBIS_COMMENT "${FILE}"))
if [[ -z "${tagList[@]}" ]]; then
echo -n ${METADATA} | sed 's|.$||'
else
for tag in ${tagList[@]}; do
local SEL_METADATA="${SEL_METADATA}$(awk -v tag=${tag} 'BEGIN{FS="=";RS=";";ORS=";"}{if($1==tag){print $0}}' <<< ${METADATA})"
done
echo -n "${SEL_METADATA}" | sed 's|.$||'
fi
}