Man Linux: Main Page and Category List

NAME

       snarf - Simple Non-interactive All-purpose Resource Fetcher

SYNOPSIS

       snarf [-avqprzm] URL [outfile] ...

DESCRIPTION

       Retrieves  data  from  a  variety  of  protocols, namely http, ftp, and
       gopher.

USAGE

       snarf is invoked with any number of URLs and outfiles. If an outfile is
       not specified, snarf preserves the remote file name when saving.

       For example, snarf http://foo.bar.com/images/face.gif will retrieve the
       file ‘‘face.gif’’ to the local system.  In the event that there  is  no
       filename (the url ends in a slash), the data is retrieved and stored in
       the file index.html for  http  URLs,  ftpindex.txt  for  ftp  URLs,  or
       gopherindex.txt for gopher URLs.

       Using  a  dash,  "-", as the outfile causes snarf to send its output to
       stdout rather than a file.

       To log in to an ftp server or website  that  requires  a  username  and
       password,  use  the  syntax  http://username:password@site.com/. If you
       omit the password, you will be prompted for it.

       Snarf has a built-in option to download the latest version  of  itself;
       simply run snarf LATEST.

   OPTIONS
       -a     Causes snarf to use "active" ftp. By default, snarf uses passive
              ftp, and, if the server does  not  support  it,  falls  back  to
              active  ftp.  Using the -a option will avoid the initial passive
              attempt.

       -r     Resumes an interrupted ftp or http transfer by checking if there
              is  a  local  file  with  the  same name as the remote file, and
              starting  the  transfer  at  the  end  of  the  local  file  and
              continuing  until  finished.  This  option  only works with HTTP
              servers that understand HTTP/1.1 and ftp  servers  that  support
              the  REST  command.  snarf uses this option automatically if the
              outfile already exists.

       -n     Don’t resume; ignore the outfile if it exists and re-transfer it
              in its entirety.

       -q     Don’t print progress bars.

       -p     Forces  printing  of  progress  bars.  Snarf  has a compile-time
              option for whether progress bars print by default or not. The -p
              option  overrides  the  -q option. In addition, if progress bars
              are enabled by default,  snarf  suppresses  them  when  standard
              output  is not a terminal. Using -p will override this behavior.

       -v     Prints all messages that come from the server to stderr.

       -z     Send a user-agent string similar to what Netscape Navigator  4.0
              uses.

       -m     Send  a  user-agent  string  similar  to what Microsoft Internet
              Explorer uses.

       Each option only affects the URL that immediately follows it.  To  have
       an  option  affect all URLs that follow it, use an uppercase letter for
       the option, e.g. -Q instead of -q.

ENVIRONMENT

       Snarf checks several environment variables when deciding  what  to  use
       for  a  proxy.  It  checks  a  service-specific  variable  first,  then
       SNARF_PROXY, then PROXY.

       The  service-specific  variables   are   HTTP_PROXY,   FTP_PROXY,   and
       GOPHER_PROXY.

       Snarf  also  checks  the SNARF_HTTP_USER_AGENT environment variable and
       will use it when reporting its user-agent string to an HTTP server.  In
       the  same  spirit,  it  also  uses  the  SNARF_HTTP_REFERER environment
       variable to spoof a Referer to the web server.

BUGS

       Bugs? What bugs? If you find ’em, report ’em.

AUTHOR

       Copyright (C) 2000 Zachary Beane (xach@xach.com)

                                  17 Jun 2000                         snarf(1)