X-Git-Url: http://www.club.cc.cmu.edu/~cmccabe/cgi-bin/gitweb.cgi?p=cmccabe-bin;a=blobdiff_plain;f=mtube.sh;fp=mtube.sh;h=2343649705adcad9536a7f2a0979939e0999021f;hp=0000000000000000000000000000000000000000;hb=63c500e9d5a060e7ef56decc9b0fdff0e1f59c01;hpb=b4fb215cf428f1fd85c15d29c5d3b6cfcca2e039 diff --git a/mtube.sh b/mtube.sh new file mode 100755 index 0000000..2343649 --- /dev/null +++ b/mtube.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +die() { + echo $@ + exit 1 +} + +MTUBE_ARGS=$@ +MTUBE_DIR="./mtube-$$" +ABSPATH_MTUBE_DIR="$(pwd)/${MTUBE_DIR}" +mkdir "${MTUBE_DIR}" || die "failed to mkdir ${MTUBE_DIR}" +trap "rm -rf -- \"${ABSPATH_MTUBE_DIR}\"" EXIT +pushd "${MTUBE_DIR}" || die "failed to pushed ${MTUBE_DIR}" +youtube-dl -f bestaudio -- ${MTUBE_ARGS} || die "youtube-dl failed" +music-to-mp3.sh * || die "music-to-mp3.sh failed" +shopt -s extglob +rm !(*.mp3) || die "rm of non-mp3 files failed" +set -x +mv *.mp3 .. +set +x +popd || die "failed to popd"