Annotation of plm/genpl, revision 1.1
1.1 ! snw 1: #!/usr/bin/env bash
! 2:
! 3:
! 4: if [[ $# != 1 ]]
! 5: then
! 6: echo "genpl: must specify specfile"
! 7: exit 1
! 8: fi
! 9:
! 10: LISTNAME="$1"
! 11: SPECFILE="${HOME}/.config/genpl/${LISTNAME}"
! 12:
! 13: if [[ ! -f "${SPECFILE}" ]]
! 14: then
! 15: echo "genpl: ${SPECFILE} not found"
! 16: exit 2
! 17: fi
! 18:
! 19: BASEDIR=$(cat "${SPECFILE}" | grep -E "^BASEDIR:" | cut -d: -f2)
! 20: BASELIST="BASE${LISTNAME}"
! 21: INLISTS=$(cat "${SPECFILE}" | grep -E "^LISTS:" | cut -d: -f2)
! 22:
! 23: if [[ -f "${BASELIST}" ]]
! 24: then
! 25: LISTS="${BASELIST},${INLISTS}"
! 26: else
! 27: LISTS="${INLISTS}"
! 28: fi
! 29:
! 30: IFS=","
! 31: for LIST in $LISTS
! 32: do
! 33: OLIST="${OLIST} ${LIST}.m3u"
! 34: done
! 35: unset IFS
! 36:
! 37: OLIST=$(echo "${OLIST}" | tr ' ' ',')
! 38: LISTS="${OLIST:1}"
! 39:
! 40: if [[ ! -d "${BASEDIR}" ]]
! 41: then
! 42: echo "genpl: ${BASEDIR} base directory not found"
! 43: exit 3
! 44: fi
! 45:
! 46: pushd "${BASEDIR}" &> /dev/null
! 47:
! 48: echo
! 49: echo "Creating playlist ${LISTNAME} from:"
! 50: for LIST in $(echo ${OLIST} | tr ',' ' ')
! 51: do
! 52: echo " * ${LIST}"
! 53: done
! 54:
! 55: pl --merge --input="${LISTS}" --output="${LISTNAME}.m3u" --overwrite
! 56:
! 57: popd &> /dev/null
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>