packages icon

Advanced FTP v0.3     (C) 1999 by Arpad Gereoffy (a.k.a. A'rpi/ESP-team)
~~~~~~~~~~~~~~~~~         report bugs and ideas to <arpi@esp.kign.org>

Featuers & changes:
[v0.1]
  - very short commands
  - file selection
  - !entrynum & masks
  - path history
  - directory cache
  - recursive get subdirs
  - wget script creation
[v0.2]
  - code cleanup, some parts rewritten
  - line editor & history
[v0.3]
  - keep-alive function
  - handle symlinks correctly  ('CDROM -> /mnt/cdrom')
  - automatic reconnect if login failed (user-defined timeout!)
  - display welcome banners/messages

Usage:
  aftp host         - connect to 'host' as anonymous with fake password
  aftp @host        - connect to 'host' as anonymous and ask password
  aftp user@host    - connect to 'host' as 'user' and ask password
Note: host may include port number/name: aftp mp3@warezsite.org:1999

1. Control commands:
  q                 - Quit
  ?                 - Help
  help              - Help
  keep [t1][,t2]    - Set keep-alive time (t1 seconds) and maxtime (t2 mins)
                      t1=0 disable keep-alive, t2=0 means no max time limit

2. Change directory commands:
  .                 - refresh (re-read current dir)
  ..                - CDUP (cd ..)
  >dirname          - CD dirname
  <                 - step back (CD to previous path)
  <<                - step back twice...
  >                 - step forward
  h                 - view path history

  Note: dirname can be !entrynum or mask too ('>!5' and '>A*')

3. Commands on files/dirs:
  General: [+-][lgw+-][s][df] [mask]
  Prefixes:
    +  = select all
    -  = unselect all
  Commands:
    l  = list
    g  = get
    w  = get with wget (generate script 'wget-it')
    +  = select (and list)
    -  = unselect
  Modifiers:
    s  = selected only
    d  = dirs only
    f  = files only
    p  = prompt (Y/n)
  Mask:
    - can contain space and other specials without quoting
    - '*' matching multiple characters
    - '?' matching exactly one character
    - '!n' is replaced with nth name (command 'g !3' gets 3rd file...)

Examples:
  l         - List all
  lsf       - List Selected Files
  gf *.mp3  - Get Files with .mp3 extension
  g !3      - Get 3rd directory (recursive)
  ws        - generate Wget script for downloading Selected things
  + X*      - select files beginning with char 'X'
  -+f X*    - select _only_ files beginning with char 'X' (first unselect all)
  -+s *p    - select only things from currently Selected ones which ends to 'p'

  Notes for 'g':
   - AFtp recursive download directories! (with all files and subdirs inside)

  Notes for 'w':
   - AFtp will append a wget line to a script called 'wget-it', so
     you can create a script for download many things in easy way.
   - options of wget are defined in 'aftp1b.c', you must recompile
     it if you modify! sorry.

To do:
   - reconnect
   - re-get/resume
   - put files
   - local commands (cd, ls, md, sh)
   - du (recursive disk-usage)

Legal things:

1. This program is based on ftplib - callable ftp access routines
   Copyright (C) 1996, 1997, 1998 Thomas Pfau, pfau@cnj.digex.net
                 73 Catherine Street, South Bound Brook, NJ,08880
   Modified in ftplib by me:
   - FtpXfer() now reports number of xfered bytes
     (requires for log_progress() at the end of transfer)
   - FtpXfer() now opens remote before local
     (to avoid creation of 0-byte files when trying open a directory)
   - Added 'DEBUG' define to print out server commands (not really important)
   - fixed: segfault if invalid port name specified ('localhost:ft[')
   - Added display_resp() to readresp() (prints welcome banners and messages)

2. This package includes the editline library sources, without 
   modification. Read ./editline/README for details and its licence.
   Editline lib is a small but powerfull replacement of GNU-Readline.

3. This program is free software; you can redistribute it and/or
   modify it under the terms of the GNU General Public License
   as published by the Free Software Foundation.

4. This software is provided as-is. The author can not be held
   liable for any damage that might arise from the use of this
   software.  Use it at your own risk.