diff options
Diffstat (limited to 'usr.bin/ncftp/ncftp.1')
-rw-r--r-- | usr.bin/ncftp/ncftp.1 | 1402 |
1 files changed, 0 insertions, 1402 deletions
diff --git a/usr.bin/ncftp/ncftp.1 b/usr.bin/ncftp/ncftp.1 deleted file mode 100644 index eb1240e..0000000 --- a/usr.bin/ncftp/ncftp.1 +++ /dev/null @@ -1,1402 +0,0 @@ -.\"------- -.\" Man page portability notes -.\" -.\" These are some notes on conventions to maintain for greatest -.\" portability of this man page to various other versions of -.\" nroff. -.\" -.\" When you want a \ to appear in the output, use \e in the man page. -.\" (NOTE this comes up in the rc grammar, where to print out '\n' the -.\" man page must contain '\en'.) -.\" -.\" Evidently not all versions of nroff allow the omission of the -.\" terminal " on a macro argument. Thus what could be written -.\" -.\" .Cr "exec >[2] err.out -.\" -.\" in true nroffs must be written -.\" -.\" .Cr "exec >[2] err.out" -.\" -.\" instead. -.\" -.\" Use symbolic font names (e.g. R, I, B) instead of the standard -.\" font positions 1, 2, 3. Note that for Xf to work the standard -.\" font names must be single characters. -.\" -.\" Note that sentences should end at the end of a line. nroff and -.\" troff will supply the correct intersentence spacing, but only if -.\" the sentences end at the end of a line. Explicit spaces, if given, -.\" are apparently honored and the normal intersentence spacing is -.\" supressed. -.\" -.\" DaviD W. Sanderson -.\"------- -.\" Dd distance to space vertically before a "display" -.\" These are what n/troff use for interparagraph distance -.\"------- -.if t .nr Dd .4v -.if n .nr Dd 1v -.\"------- -.\" Sp space down the interparagraph distance -.\"------- -.de Sp -.sp \\n(Ddu -.. -.\"------- -.\" Ds begin a display, indented .5 inches from the surrounding text. -.\" -.\" Note that uses of Ds and De may NOT be nested. -.\"------- -.de Ds -.Sp -.in +0.5i -.nf -.. -.\"------- -.\" De end a display (no trailing vertical spacing) -.\"------- -.de De -.fi -.in -.. -.TH NcFTP 1 "1.9" NCEMRSoft -.\"------- -.SH "NAME" -.\"------- -ncftp \(em Internet file transfer program -.\"------- -.SH "SYNOPSIS" -.\"------- -.B ncftp -.RI [ "program options" ] -.RI [[ "open options" ] -.IR hostname [\c -.B :\c -.IR pathname ]] -.\"------- -.SH "DESCRIPTION" -.\"------- -.I NcFTP -is a user interface to the Internet standard -.IR "File Transfer Protocol" . -This program allows a user to transfer files to and from a remote network -site, and offers additional features that are not found in the standard -interface, -.IR ftp . -.\"------- -.SH "FEATURES" -.\"------- -Program options will be explained later in this document. -Let's get down to business and go over the features -that make this program worthwhile. -.PP -Here is the list of section headers; I have my $MANPAGER environment -variable set to use -.RB `` "less \-i" '' -so that I can skip to the section I -want (otherwise, -.BI / regex -commands to the pager won't match the section -headers because of the formatting codes; -the -.RB `` \-i '' -can search through the formatting codes) -.Ds -Establishing the remote connection -Format of the RC file -The Recent-sites file -Redialing a busy remote site -Supplying a sitename from your shell's command line -Using Colon-mode -Using FTP-cat and FTP-more mode -Supplying a port number with the open command -Displaying and changing program variables -Program variables -Listing a remote directory -Viewing a remote directory with your pager -Redisplaying the last directory listing -Fetching files from the remote host -Viewing a remote file with your pager -Creating a message file on the remote host -Looking up site names and addresses -Checking the configuration of the program -Using the command shell -Customizing the prompt -Keeping a log of your file transfers -Program options -A sample RC file -.De -.\"------- -.SH "Establishing the remote connection" -.\"------- -Just opening a connection to a remote server was inconvenient enough in the -stock -.I ftp -program to justify writing this program. -Here at -.IR NCEMRSoft , -we want to do our business as quickly and painlessly as possible. -We'd -rather save time and wear and tear on our metacarpals than bother typing -entire site names, usernames, and email addresses masquerading as passwords, -and setting binary mode. -.PP -We made all connections anonymous by default, and we automatically send our -email address for the password on those connections. -We allowed for site -names to be abbreviated. -.PP -For each commonly accessed site, you can put an entry in your program -preferences file (let's call it the ``ncftprc file'' or ``RC file'' for short). -To open the site, from the command shell all you do is type: -.Ds -open wuarchive.wustl.edu -.De -.PP -or -.Ds -o wuarchive.wustl.edu -.De -.PP -As promised, you can abbreviate that further. -Just use any abbreviation that -would match only the site you had in mind. -For the previous example, you -could try: -.Ds -o wuarc -o wustl -o stl -o wu -.De -.PP -Any of those abbreviations would open wuarchive.wustl.edu anonymously, -sending your anon-password (usually set to your email address) as the -password. -Keep in mind that the program tries opening the first site -that matches the abbreviation you supplied. -So: -.Ds -o w -.De -.PP -might match a site named bowser.nintendo.co.jp if that site appeared before -your entry for wuarchive.wustl.edu. -.PP -Most of the time we open remote sites anonymously, but -there are times where you need to specifically open a site with an actual -username and password. -Let's say my partner, Phil Dietz, wants to FTP -something out of my account. -Perhaps he wants to fetch the latest version -of the source code to -.I NcFTP -so he can optimize something or add a new feature behind my back. -Since the -program opens remote sites anonymously by default (actually, you can change -this behavior; more on that later), he would have to specify a flag to the -.I open -command so he can supply my username and password. -He would try: -.Ds -o \-u sphygmomanometer.unl.edu -.De -.PP -or, more likely: -.Ds -o \-u sph -.De -.PP -Then the program would prompt him for a username (login, whatever) and a -password: -.Ds -Login Name (pdietz): mgleason -Password: ******** -.De -.PP -If he got it right, he could raid my stuff. -If not, he'd probably drop -me an email asking me to quit changing my password so often. -.PP -There are even times where you want to FTP from your own account, like if -you are debugging an FTP client you wrote. -At this prompt: -.Ds -Login Name (mgleason): -.De -.PP -I could just hit return to tell the program that I want ``mgleason'' as my -username, then I would enter my password. -.\"------- -.SH "Format of the RC file" -.\"------- -This release of the program is somewhat compatible with the stock -.I ftp -program's -.B ".netrc" -file. -However, I can promise you that in the near future the program will -use a new format, so don't invest too much time in it. -.PP -The RC file can be named -.RB `` ncftprc '', -.RB `` netrc '', -or -.RB `` .ncftprc '', -but it is usually named -.RB `` .netrc '' -so it can be used with the stock -.I ftp -program. -.I NcFTP -looks in the current working directory for any of those files, and then in -your home directory, and after that it gives up (which is OK, because RC -files aren't mandatory). -.PP -The file usually starts with -.I #set -and -.I #unset -commands that do things -to the programs variables. -The reason for the ``#'' is so the stock -.I ftp -program will think they are comments. -You might have this appearing as -the first few lines in your RC file (I'll explain later): -.Ds -#set debug 1 -#set pager "less \-EMi" -#unset startup\-msg -.De -.PP -After those, you put in machine entries for each of your favorite sites. -Let's put in an entry for wuarchive.wustl.edu. -First you would put: -.Ds -machine wuarchive.wustl.edu -.De -.PP -Then you could put in your username, password, and account if you like: -.Ds -user anonymous -password \-mgleason@ftp.cs.unl.edu -account wuarc.does.not.use.accounts -.De -.PP -Following that, you would add the startup macro that is run -each time you connect to wuarchive. -You must start it with this line: -.Ds -macdef init -.De -.PP -Then put in the commands you want to do: -.Ds -cd /graphics/gif -ls \-lt -.De -.PP -After that, you end the macro with a blank line (important!). -The finished machine entry would look like the following. -To make the transition to the impending new format less painful, -I recommend you adhere to this format: -.ta 6m +6m -.Ds -machine wuarchive.wustl.edu - user anonymous - password \-mgleason@ftp.cs.unl.edu - account wuarc.does.not.use.accounts - macdef init - cd /graphics/gif - ls \-lt -.RI \t( "mandatory blank line to end the macro" ) -.De -.PP -Of course, if all you want to do is open wuarchive anonymously, you -needn't bother with the ``user'', ``password'', and ``account'' lines. -You may want to put them in if you plan on using the stock -.I ftp -program, though. -Try something like this: -.ta 6m +6m -.Ds -machine wuarchive.wustl.edu - macdef init - cd /graphics/gif - ls \-lt -.RI \t( "mandatory blank line to end the macro" ) -.De -.PP -You can tell the program to not run the startup macro if you supply -.B "\-i" -to the -.I open -command. -.PP -Really, you should only bother adding entries for sites that you want to -run startup macros upon connection. -The next section explains why. -.\"------- -.SH "The Recent-sites file" -.\"------- -Each time you open a site, the program saves the name of the site and the -last directory you were in to the -.I recent-sites file -which is named -.B ".ncrecent" -and placed in your home directory. -The program saves a -predetermined number of these sites in the file, and when it reaches the -limit, it discards the oldest entry so it can add a new one. -.PP -You can just go ahead and use the name of the site you want with the -.I open -command if you know it is in the -.I recent\-file -(and you can abbreviate the -name, just like those in the RC file). -But if you cannot remember what the -name of the site you want, all you do is run the -.I open -command with -no site parameter: -.Ds -open -.De -.PP -This will pop up a list of the sites in the -.IR "recent-file" , -and sites in your RC file. -At the open prompt, just type the name (or an -abbreviation of that name) or the number preceding the site name to open -that site. -After opening the site you wanted, the program sets the remote -working directory to the same one you left in the last time you called. -.PP -If you don't like the idea of having the sites you called stored on disk, -you can turn this feature off using an -.I unset -command, explained later. -.\"------- -.SH "Redialing a busy remote site" -.\"------- -Some remote sites limit the number of leeches, er, anonymous connections -at a time to reduce the load on the host computer. -You can use the -.I open -command's redial feature to keep attempting connections until you get on, -although that is not a very polite thing to do. -The simplest way to do -this would be to just supply the -.B \-r -option: -.Ds -open \-r wuarc -.De -.PP -There are also options you can use to tweak redial. -The -.B \-d -flag sets -the delay between dials, and the -.B \-g -flag sets a limit on how many dials -should be attempting before giving up. -If you don't supply -.B \-g -the program will dial a forever and a day (which Ian K. Piumarta, and my Number Theory professor, -Dr. Mientka, say is longer than a day and forever) -until it connects successfully, or until you get sick of waiting and hit the -interrupt key (usually ^C). -.PP -This example dials wuarchive every ten minutes, giving up after twenty -attempts. -Note that the redial delay is specified in seconds: -.Ds -open \-r \-d 600 \-g 20 wuarc -.De -.PP -Please be considerate when you use redialing, so you won't tax the network. -Site administrators can and do get angry when they get flooded with -connections. -.\"------- -.SH "Supplying a sitename from your shell's command line" -.\"------- -When you run the program: -.Ds -ncftp -.De -.PP -by itself does nothing and waits for you to type commands to the program's -own shell. -Just like the stock -.I ftp -program, you can supply a site name -on the command line: -.Ds -ncftp wuarchive.wustl.edu -.De -.PP -You can also use abbreviations as usual: -.Ds -ncftp wuarc -.De -.PP -This is equivalent to running the program, then issuing an -.I open -command to open wuarchive. -.\"------- -.SH "Using Colon-mode" -.\"------- -The -.I open -command is not a one-trick pony. -Another option is what I call -.IR "colon-mode" . -This feature is used (most of the time) from your shell's -command line. -.PP -In ancient times, way back during the Disco era, you could use a program -called -.I tftp -to fetch a file using the Internet standard -.I Trivial File Transfer Protocol. -You could use that program to do something like this -from within its shell: -.Ds -get wuarchive.wustl.edu:/graphics/gif/README -.De -.PP -and that would call wuarchive and fetch the -.B README -file. -.PP -You can use this program to do the same thing from your shell's command -line: -.Ds -csh> ncftp wuarchive.wustl.edu:/graphics/gif/README -csh> head README -.De -.PP -This tells your shell, in this case the ``c-shell'' to run -.IR NcFTP , -which -would open wuarchive, fetch -.B /graphics/gif/README -and write the file -.B ./README -in the current working directory, and then exits. -This is nice if you don't -want to browse around the remote site, and you know exactly want you want. -It would also come in handy in shell scripts, where you don't want to -enter the command shell, and might not want the program to spew output. -.PP -You can use -.I colon-mode -to set the starting remote working directory also: -.Ds -csh> ncftp wuarchive.wustl.edu:/graphics/gif -.De -.PP -This would run the program, open wuarchive, and -.I cd -to the gif directory, then run the program's command shell so you can -browse. -.PP -.I Colon-mode -is also available from within the program's command shell. -At a prompt you can do stuff like this: -.Ds -ncftp> open wuarchive.wustl.edu:/graphics/gif/README -ncftp> o wuarc:/graphics/gif -.De -.\"------- -.SH "Using FTP-cat and FTP-more mode" -.\"------- -There are times where you might not want the program to write a -.I colon-mode -file in the current working directory, or perhaps you want to pipe the -output of a remote file into something else. -.I Colon-mode -has options to -do this. -It was inspired by the guy who wrote the -.I ftpcat -perl script. -The -.B \-c -option tells the program to write on the standard -output stream. -The -.B \-m -option pipes the file into your pager (like -.IR more ")" -Of course this won't work if the thing you give -.I colon-mode -is a directory! This example just dumps a remote file to stdout: -.Ds -csh> ncftp \-c wuarc:/graphics/gif/README -\&... -csh> -.De -.PP -This example redirects a remote file into a different -location: -.Ds -csh> ncftp \-c wu:/README > ~pdietz/thesis.tex -.De -.PP -This one shows how to use a pipeline: -.Ds -csh> ncftp \-c wuarc:/README | tail | wc \-l -10 -csh> -.De -.PP -This shows how to page a remote file: -.Ds -csh> ncftp \-m wuarc:/graphics/gif/README -\&... -csh> -.De -.\"------- -.SH "Supplying a port number with the open command" -.\"------- -This option just didn't fit anywhere else, so to finish out the open command, -.B \-p -lets you supply a port number if you have to -.I ftp -to a site using an nonstandard port number. -Personally, I have yet to use this feature, but it is -there for compatibility with the stock -.I ftp -program. -.\"------- -.SH "Displaying and changing program variables" -.\"------- -Now I'll explain the commands unique to -.IR NcFTP . -The others should perform the -same as they would in the stock -.I ftp -program; -consult the man page for it if you want those explained, -or use the -.I help -command for a brief blurb. -.PP -The -.I show -command is used to display program variables and their values. -.Ds -show all -.De -.PP -or -.Ds -show -.De -.PP -would display all the variables with their values. -.Ds -.RI show " var1 var2 ... varN" -.De -.PP -would display each specified variable and its value. -.PP -The -.I set -command changes the value of a program variable. -Its syntax is: -.Ds -.RI set " varname value" -.De -.PP -For Boolean or Integer variables, -.Ds -.RI set " varname" -.De -.PP -would set the value of the variable -.I varname -to -.B 1 -.RB ( true ). -.PP -The -.I unset -command can be used to set the variable to its default value, -or for Boolean and Integer variables, set the value of the variable to -.B 0 -.RB ( false ). -For String variables, you can use this to set the value to an -empty string. -.PP -You can use any of those three commands in both the command shell, -or in the RC file with a ``#'' prepended. -.\"------- -.SH "Program variables" -.\"------- -Each variable can be one of the following types: -.TP -Boolean: -Can be -.RB `` on '' -or -.RB `` off '' -(you can also use -.RB `` 1 '' -or -.RB `` 0 ''). -.TP -Integer: -Can be any positive or negative number, or -.BR 0 . -.TP -String: -Is a string of characters. -If the string needs to have a space -in it, make sure you surround the whole string with double quotes in a -.I set -command. -.PP -Variables follow. -Some variables are explained later in the relevant sections. -.TP -.IR anon\-open " (Boolean)" -Tells whether the default login mode is anonymous if -on, or if off, will prompt for a username/password. -You can always override this by using either -.B \-a -or -.B \-u -with the -.I open -command. -.TP -.IR anon\-password " (String)" -Sends this as the password when you login anonymously. -By default this is your email address. -.TP -.IR ansi\-escapes " (Boolean)" -If on, the program can use boldface, underline, -and inverse text. -.TP -.IR auto\-binary " (Boolean)" -If on, sets the transfer type to binary mode -immediately after connection. -.TP -.IR debug " (Integer)" -Sets the debugging level. -.TP -.IR gateway\-login " (String)" -Tells which username to use when logging in to -your firewall gateway host. -.TP -.IR gateway\-host " (String)" -The site which is acting as your firewall gateway, -or empty if you aren't using one. -.TP -.IR local\-dir " (String)" -The current local working directory. -I like to set this from my RC file, -so all my files go into my download directory. -.TP -.IR logfile " (String)" -The name of your personal transfer log, or empty -if you aren't using a transfer log. -.TP -.IR logsize " (Integer)" -The maximum ceiling of your log file, before the program -removes old entries. -.TP -.IR mprompt " (Boolean)" -If on, prompts for each remote file expanded from a -wildcard globbing expression. -.TP -.IR netrc " (String, Read-only)" -Tells you the name of the RC file in use. -.TP -.IR pager " (String)" -The pathname and flags of the program used to display -output one screenful at a time. -The default is the value of your $PAGER -environment variable. -.TP -.IR prompt " (String)" -The prompt specification that expands into the prompt. -.TP -.IR progress\-reports " (Integer)" -Which progress meter to use, or -.B 0 -if you don't want progress reports during file transfers. -Set it to -.B 1 -for a simple percentage meter; -.B 2 -for a fancy bar graph indicator; -.B 3 -to print just the number of kilobytes transferred; or -.B 4 -to print one dot for each 10% transferred, if you -want to avoid the use of backspaces. Note that the program -may use a different meter depending on how cooperative the -remote host is, and what you have the -.I ansi\-escapes -variable set to. -.TP -.IR recent\-list " (Boolean)" -If on, uses and updates the -.I recent\-file. -.TP -.IR remote\-is\-unix " (Boolean)" -Set automatically by the program upon connection, -you may need to use this in a startup macro if the program guessed -that a remote site was UNIX when it really is not. -.TP -.IR startup\-msg " (Boolean)" -If on, prints the opening message and tip. -.TP -.IR tips " (Boolean)" -If on, prints a tip on how to use the program better each -time you run the program. -.TP -.IR type " (String)" -The name of the file transfer mode in use, -such as -.RB `` binary '' -or -.RB `` ascii ''. -.TP -.IR verbose " (String/Integer)" -Controls the amount of output spewed by the program. -You can supply either the first character of the name of the -verbosity level, or its number: -.RS -.TP -.IR "Q" "uiet (\-1)" -Won't print any output at all, even if an error occurs. -.TP -.IR "E" "rrors Only (0)" -No output, except when errors occur. -.TP -.IR "T" "erse (1)" -Prints errors, and useful output from the remote host. -.TP -.IR "V" "erbose (2)" -Prints everything, even junk output from the remote end. -.RE -.\"------- -.SH "Listing a remote directory" -.\"------- -The -.I ls -and -.I dir -commands perform in a similar manner to those of the -stock -.I ftp -program. -.PP -The -.I ls -command sends the FTP command ``NLST'' for you. -This command has been set so that it defaults -to always listing files in columns (this is the -.B \-C -option given to the UNIX -.I ls -command) and appending -metacharacters to each item name (this is the -.B \-F -option), so you can -see which items are directories, files, links, etcetera. -If you don't want -your items columnized, you can try using the -.B \-1 -option with -.I ls -to print one item per line. -.PP -The -.I dir -command sends the FTP command ``LIST'' for you, which instead -of printing just item names, it prints item sizes, owners, dates, and -permissions as well. -This command is equivalent to -.RB `` "ls \-l" '' -on most remote systems. -.PP -The usage for both commands is the same. -Here is the one for -.IR ls : -.PP -.RS -.B ls -.RI [ \-flags ] -.RI [ "directory and file names" ] -.RI [ redirection ] -.RE -.PP -Note that in this program, you can supply both flags and items to list in -the same command. -The stock version of -.I ftp -doesn't let you do this: -.Ds -ls \-lrt /info\-mac/help -.De -.PP -Another thing that the program does which the others should have done is -let you supply more than one item: -.Ds -ls \-lrt /info\-mac/help /pub /info\-mac/README -.De -.PP -You can also redirect the output into a file, or pipe it into something. -This example shows how to list the contents of the current remote directory, -and save the output into a file in the current local directory: -.Ds -ls \-t >ls.out -.De -.PP -Note that for this to work, there must be no whitespace between the ``>'' -and the filename, unlike your shell command line which allows for extra -whitespace. -This will be (actually, is) fixed in a future version of the -program. -.PP -These examples show how to use a pipe: -.Ds -ls \-t |tail -dir \-t "|less \-CM" -ls \-t "|tail | wc" -.De -.PP -Like the redirection example, there must be no whitespace between the first -pipe character and the rest of the stuff. -The trick is that it has to -appear as one argument to the commands. -The second and third examples -illustrate the use of double quotes to squeeze extra parameters in. -The second example can be done without all that typing. -See the descriptions of the -.I pdir -and -.I pls -commands below. -.\"------- -.SH "Viewing a remote directory with your pager" -.\"------- -Didn't you hate it when you listed a remote directory, only to have most of -the stuff scrolled off your terminal before you could read it? -The -.I pls -and -.I pdir -commands take care of this for you. -As you might have guessed, -they perform exactly like their regular counterparts, -only you view them with your pager. -The pager to use is controlled by the -.I pager -program variable. -.\"------- -.SH "Redisplaying the last directory listing" -.\"------- -The program saves the listing into a local buffer, -so if you need to see it again (probably forgot about -.IR pdir ) -you can use the -.I redir -and -.I predir -commands for this. -.\"------- -.SH "Fetching files from the remote host" -.\"------- -The -.I get -and -.I mget -retrieve remote files for you. -The usage for -.I get -is: -.Ds -get remote\-file [local\-file or redirection] -.De -.PP -To fetch -.B /pub/README -and write it as a file named -.BR ./junk/readme , -try: -.Ds -get /pub/README ./junk/readme -.De -.PP -To fetch -.B /pub/README -and write it as -.BR ./README , -just do: -.Ds -get /pub/README -.De -.PP -This lets you fetch a file using its whole pathname, and write a copy of -it in the current directory, without having to bother with typing a local -filename. -In the unlikely event that you have write permission to a -directory called -.B /pub -on your local machine, it would write -.RB `` README '' -in that directory. -.PP -Most of the time the file you want will be in the current remote directory, -so you can just do these: -.Ds -get README -get README ./junk/readme -.De -.PP -You can also use a redirection for -.IR get , -just like you can with the -.IR ls ", " dir ", and " redir -commands. -As described earlier, you have -to conform to the format below for this release of the program: -.Ds -get README >/dev/null -get README |head -get README "|head \-8" -get README "|less \-EMi" -.De -.PP -The last example is facilitated by the -.I page -command described later. -.PP -The -.I get -command can also use a wildcard expression in an attempt to -match exactly one remote file. -I call it ``Poor Man's File Completion.'' -If you've done a remote listing, and you decide you want to download a -file by the name of -.RB `` obnoxiouslylongpackagename.tar.Z '', -you can use -``PMFC'' to save some keystrokes. -Choose an expression that will only -match that one file, then use it with -.IR get : -.Ds -get obn*.Z a.tar.Z -.De -.PP -If your pattern was unique, -.I get -will fetch that file only. -If the pattern matched more than one file, the program will bitch and moan. -.PP -The -.I mget -command is used to fetch many files at a time. -The difference between -.I get -and -.I mget -is that -.I get -lets you write only one file, -but you can put it in a different directory, while -.I mget -fetches many files, -always writing them in the current local directory. -This example fetches several remote files at once: -.Ds -mget a.file.Z b.file.Z c.tar d.tar.Z -.De -.PP -The -.I mget -command, and its ugly sisters, -.I mput -and -.I mdelete -let you use wildcard expressions. -I could have done the previous example as: -.Ds -mget *.Z c.tar -.De -.PP -instead. -The ``m'' commands will verify each file, -if you have the program variable -.I mprompt -set. -.\"------- -.SH "Viewing a remote file with your pager" -.\"------- -If you would like to read a file on the remote host without saving a copy -of it on your machine, you can use the -.I page -(or -.I more -if you wish) command: -.Ds -page README -page obn*README -page README.Z -.De -.PP -The second example show that you can use ``PMFC'' like you can for -.IR get. -The third example will work also, because if the program knows how to -decompress the file, it will do so before feeding it to your pager. -As stated earlier, -you can change the program to use to page by setting the program variable -.IR pager. -.\"------- -.SH "Creating a message file on the remote host" -.\"------- -Use the -.I create -an empty file on the remote site. -Sometimes it is necessary to leave a note if you can't get in touch -with the remote site's administrator. -For example if a file is corrupted, you could try: -.Ds -create Foo.tar_is_corrupt -.De -.PP -in hopes that the original uploader will replace it. -.\"------- -.SH "Looking up site names and addresses" -.\"------- -You can use the program's builtin -.RI mini- nslookup -facility. -If you wanted to know the site's IP number, but only knew the name you -could do: -.Ds -lookup ftp.cs.unl.edu -.De -.PP -This would spit out IP number for that site, in this case ``129.93.1.12''. -If you needed to know what a site's name was, but only knew the IP number, -try: -.Ds -lookup 129.93.1.12 -.De -.PP -This would spit out the name for that site, in this case ``ftp.cs.unl.edu''. -.\"------- -.SH "Checking the configuration of the program" -.\"------- -Use the -.I version -command to print version and compilation information about the program. -This will also tell you which optional features are -compiled into the program, such as logging to the system log and which -command line editor (if any) has been installed. -.PP -The author's email address is listed, and if you need to report something, -send the output of this command along with your message. -.\"------- -.SH "Using the command shell" -.\"------- -Just like the stock -.I ftp -program, you type commands to it until you get -bored and hit either ^D or type the -.I quit -command. -.PP -The program supports links to popular command line editing libraries. -If the person who compiled it went to the effort, you will be able to -edit the command line with arrow keys and other editing commands, and also -scroll up and down in the command line history, usually with the up and -down arrows. -You can check the -.I version -command to see if either -``GETLINE'' or ``READLINE'' are installed. -.\"------- -.SH "Customizing the prompt" -.\"------- -You can set the shell's prompt string to whatever you like. -You can use several metacharacters that expand into something each prompt. -The -.RB `` % '' -flags are passed to -.IR strftime (3), -so you can put the date or time in the prompt formatted as you like it: -.Ds -set prompt "%I:%M ncftp>" -.De -.PP -That would insert the current time in the prompt. -.PP -The -.RB `` @ '' -flags are expanded by the program itself. -Here's the list of them. -.PP -If you have an ANSI-compatible terminal, or you have the program variable -.I ansi\-escapes -set, you can use -.BR @B , -.BR @I , -and -.B @U -to turn on boldface, -inverse, and underline text respectively (otherwise they won't insert -anything). -You can also use -.B @R -to turn on inverse (reverse) text. -.B @P -sets the text back to plain text. -.PP -.B @D -Inserts the full path of the current remote directory. -The -.B @J -flag is similar except it inserts only the directory name. -.PP -.B @H -Inserts the name of the remote host. -.B @C -inserts the host and current -directory path in -.I "colon-mode" -format, such as -``ftp.cs.unl.edu:/pub/mgleason'', or ``(not connected)''. -The -.B @c -flag is similar, only it will insert ``ftp.cs.unl.edu:/pub/mgleason'' and a -newline if connected, otherwise it prints nothing. -The default prompt uses -this flag to print a two line prompt when connected and a one line prompt -when not connected. -.PP -.BR @E " or " @! -inserts the event number (how many commands you've typed). -.PP -.B @M -inserts ``(Mail)\0'' if mail has arrived since running the program. -.PP -.B @N -inserts a newline character. -.\"------- -.SH "Keeping a log of your file transfers" -.\"------- -You can have the program keep a personal log file. -I find it is useful so I can see where I got a certain file, -or what the name of that site was I called two weeks ago. -.PP -To use a log, add: -.Ds -#set logfile ~/.ftplog -.De -.PP -(or whatever you want to name the log) to your RC file. -I don't want my log growing too large and using up all my disk space, -so I also have: -.Ds -#set logsize 10240 -.De -.PP -in my RC file. -If you set the limit on the maximum log size, the program will -keep the log file at or below that size, discarding old entries. -.PP -Note that this is different from having SYSLOG appear in the -.I version -command's output. -When this is on, your actions are recorded to the system -log, so your system administrator can make sure you aren't doing anything -``bad.'' -.\"------- -.SH "Program options" -.\"------- -Remember that you can treat the command line like an -.I open -command, -so all lowercase options are passed to the -.I open -command, and the -uppercase options are handled by the main program. -The uppercase options -are described below; refer to the -.I open -command for descriptions of its options. -.TP -.BI \-D " x" -sets the debugging level to -.IR x . -.TP -.B \-H -runs the -.I version -command and exits, so you can save the output of -it to use when you need to mail me something. -.TP -.B \-I -toggles the mprompt variable; this is provided for compatibility with -.RB `` "ftp \-i" ''. -.TP -.B \-N -disables reading of the RC file; -this is provided for compatibility with -.RB `` "ftp \-n" ''. -.TP -.B \-P -toggle passive mode (defaults to off). Useful for work behind firewalls. -.TP -.BI \-V " x" -sets verbosity to level -.I x -.RB ( \-1 , -.BR 0 , -.BR 1 , -.BR 2 ) -or -.RB ( quiet , -.BR errs , -.BR terse , -.BR verbose ). -See the description of the -.I verbose -program variable for more information. -.PP -Here are some example command lines. -Again, see the description of the -.I open -command (especially -.IR "colon-mode" " and " "FTP\-cat mode" ")" -and all its functions for more information. -.PP -This just enters the -.I NcFTP -command shell: -.Ds -csh> ncftp -.De -.PP -This fetches -.B CONTENTS -and then quits: -.Ds -csh> ncftp ftp.cs.unl.edu:/pub/mgleason/CONTENTS -.De -.PP -Some others examples, with open options and main program options mixed in: -.Ds -csh> ncftp \-V quiet \-u ftp.unl.edu -csh> ncftp \-c ftp.cs.unl.edu:/pub/mgleason/CONTENTS -csh> ncftp \-D 2 \-r \-d 120 \-g 10 \-N ftp.unl.edu -.De -.\"------- -.SH "A sample RC file" -.\"------- -Here is a sample RC file: -.ta 6m +6m -.Ds -#set logfile ~/.ftplog -#set progress\-reports 2 -#set local\-dir /usr/tmp/zz -#set prompt "@B@E @UNcFTP@P @B@M@D@P \->" -.sp -machine sumex\-aim.stanford.edu - macdef init - cd /info\-mac - get ./help/recent\-files.txt "|grep \-v '.abs' > sumex" - !less sumex - pwd -.sp -# This site is in here just so I can use ``apple'' -# as an abbreviation. -machine ftp.apple.com -.sp -# NcFTP will only ask for your password: -machine ftp.cs.unl.edu - login mgleason -.sp -# You can supply a login and a password: -machine fake.machine.unl.edu - login mgleason - password mypass - macdef init - cd ./foo/bar -.sp -# If an antiquated non-UNIX machine doesn't use -# the "SYST" command, you may need to unset -# remote\-is\-unix, if the remote host complains -# about ``ls \-CF''. -machine some.vms.unl.edu - macdef init - unset remote\-is\-unix -.sp -.De -.\"------- -.SH "AUTHORS" -.\"------- -.I NcFTP -was written by Mike Gleason, -.I NCEMRSoft -(mgleason@cse.unl.edu), and based on code by the authors of the -.I ftp -from the BSD 4.3 distribution. -.I NcFTP -is copyrighted 1992, 1993 by NCEMRSoft -and 1985, 1989 by the Regents of California. -.PP -Ideas and some code contributed by Phil Dietz, -.IR NCEMRSoft "." -Testing and debugging done by Phil and -Kok Hon Yin -.PP -Extensive man page formatting work -by DaviD W. Sanderson (dws@ssec.wisc.edu). -.PP -This version of the program is obselete and no longer supported. -Ask your system administrator to upgrade to version 2.2 or newer. -.PP -As of this writing, the most recent version is archived in -/pub/ncftp, on -.IR "ftp.cs.unl.edu" "." -.\"------- -.SH "BUGS" -.\"------- -Correct execution of many commands depends upon proper behavior -by the remote server. -.PP -The remote server may drop the connection if you take a long time to -page remote files. -.PP -Termcap padding is not correctly displayed. -.PP -There are no such sites named -.I bowser.nintendo.co.jp -or -.IR sphygmomanometer.unl.edu . -.\"------- -.SH "SEE ALSO" -.\"------- -.IR strftime (3), -.IR ftpd (8), -.IR ftp (1), -.IR nslookup (8), -.IR compress (1), -.IR gzip (1), -.IR zcat (1), -.\" .IR fsp (1), -.\" .IR archie (1), -.IR tftp (1). |