Console-based podcaster – updated

It has been a while since I first posted my version of bashpodder (a console-based podcaster in a single bash script)

Since then a bunch of small fixes have been added to the script to better handle ‘odd’ rss feeds and also to clean up the output.

The configuration of the script now sits in the file ~/.bashpodder  Inside this file you can specify where the logs go to and where the files download to (makes it easier to run the script automatically)

Thanks to Mobilediesel it now also doesn’t create the temporary xslt file and there is the option to use ‘-a feedurl [items]’ to add a feed to the config file.  The [items] parameter is optional and when used will cause bashpodder to mark all items in the feed as already downloaded except the last [items] items.  This is useful when added a new feed so that it doesn’t try to download every item in the feed since day one 🙂

The updated script can be downloaded as bashpodder.sh and an example config file as .bashpodder

For more details on the script see the original post here

2 thoughts on “Console-based podcaster – updated

  1. I made a few more changes to the script. http://dl.dropbox.com/u/1055489/scripts/bashpodder.diff The config file is now generated on first run. It’s also sourced from the bash script so grep doesn’t need to be called from sub shells for each variable.
    I also set it to be able to limit the download speed of each feed as well as limit the number of feeds that will download at the same time. I replaced some sed & cut commands with bash parameter substitution as it’s slightly faster. Not much but measurable.
    I also added the ability to set individual feeds to “catchup mode” indefinitely, so you can take a break from a feed but keep it’s log up to date. Just add a “1” to the front of a feed address in .bashpodder like this
    1http://revision3.com/bytejacker/feed/Xvid-Large
    I posted just the diff file so you can better see what changes I made. That way you can more easily pick what you do and do not want to use.

    I hope it’s clear enough from my slightly inadequate description combined with the diff file I linked to. Let me know if it sounds too insane!

Comments are closed.