snarf is a command line resource grabber. It can transfer files through the http, gopher, finger, and ftp protocols without user interaction. It is small and fast.
If you have an URL (for example, http://foo.bar.com/picture.jpg), you type the following (the $ below represents the command prompt):
$ snarf http://foo.bar.com/picture.jpgsnarf will fetch the file and save it to your local system with the name picture.jpg. If you want to save the file under a different name (for example, background.jpg), you type the following:
$ snarf http://foo.bar.com/picture.jpg background.jpgsnarf saves the file with the name background.jpg. If you want snarf to send the file to standard output, you would type the following:
$ snarf http://foo.bar.com/picture.jpg -When snarf sees a dash as the local file name, it sends everything it fetches to standard output.
If you specify an FTP URL that ends with a slash, snarf returns a directory listing instead of a particular file. If you specify an HTTP URL that ends with a slash, snarf returns the default index document (usually index.html).
I have created a screen shot of snarf in action.
snarf is designed to automate repetitive tasks such as downloading the latest Dr. Fun cartoon. It is not designed to be a whizzy, all purpose tool. It is not designed to be Netscape or Lynx or ncftp. It is fast and simple because it doesn't need to be anything else.
People often send me interesting patches to do cool stuff. I don't always get a chance to put these patches into a snarf release in a timely way.