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.