Posh – a podcatcher written in Bash
Posh is a podcast downloader that does things the way its benevolent dictator wants (me). I once looked around for a command line podcast client, but I could not find anything I liked. So I wrote my own.
Summary of features:
- Few dependencies (curl, xsltproc), easy installation.
- Robust feed fetching and parsing, tracking of downloaded content, proper chronological ordering, sensible naming of downloaded files (audio or video) and expiry support.
- Supports both RSS and Atom 1.0 feeds.
- Easy configuration and feed subscription management. Self documenting (help, -h).
- OPML file support (import, delete, export).
- Suitable to set up as a cron job for periodic automatic updating of podcasts.
Changelog:
- 0.9: Added support for Atom 1.0 feeds.
- 0.8: Initial release.
Get it here: posh-0.9.tar.gz, version 0.9, 2011-11-05 [PGP signature: posh-0.9.tar.gz.asc]
Usage examples
Add a couple of feeds to config: $ posh -a http://somewhere.com/feed.rss -a http://foo.feed.com/?rss "Foo Feed" Update all feeds, download only the most recents item for each feed: $ posh -u Downloaded episodes can now be found under ~/Podcasts/, each podcast in its own sub-directory. Update feeds matching 'bbc', download and keep at most 5 items for each feed, older items are expired: $ posh -u bbc -l5 -e # Remove feeds from config matching 'bbc.co.uk' and delete them from local cache: $ posh -r bbc.co.uk -X