ncftpget
(1)
Name
ncftpget - Internet file transfer program for scripts
Synopsis
ncftpget [options] remote-host local-directory remote-
files...
ncftpget -f login.cfg [options] local-directory remote-
files...
ncftpget [options] ftp://url.style.host/path/name
ncftpget -c [options] remote-host remote-file > stdout
ncftpget -C [options] remote-host remote-file local-path-
name
ncftpget -c [options] ftp://url.style.host/path/name > std-
out
Description
User Commands ncftpget(1)
NAME
ncftpget - Internet file transfer program for scripts
SYNOPSIS
ncftpget [options] remote-host local-directory remote-
files...
ncftpget -f login.cfg [options] local-directory remote-
files...
ncftpget [options] ftp://url.style.host/path/name
ncftpget -c [options] remote-host remote-file > stdout
ncftpget -C [options] remote-host remote-file local-path-
name
ncftpget -c [options] ftp://url.style.host/path/name > std-
out
OPTIONS
Command line flags:
-u XX Use username XX instead of anonymous.
-p XX Use password XX with the username.
-P XX Use port number XX instead of the default FTP ser-
vice port (21).
-j XX Use account XX in supplement to the username and
password (deprecated).
-d XX Use the file XX for debug logging.
-a Use ASCII transfer type instead of binary.
-t XX Timeout after XX seconds.
-v/-V Do (do not) use progress meters. The default is to
use progress meters if the output stream is a TTY.
-f XX Read the file XX for host, user, and password infor-
mation.
-c Read from remote host and write locally to standard
out.
-C Read from remote host and write locally to specified
pathname.
ncftpget Last change: NcFTP Software 1
User Commands ncftpget(1)
-A Append to local files, instead of overwriting them.
-z/-Z Do (do not) try to resume transfers. The default is
to try to resume (-z).
-E Use regular (PORT) data connections.
-F Use passive (PASV) data connections. The default is
to use passive, but to fallback to regular if the
passive connection fails or times out.
-DD Delete remote file after successfully downloading
it.
-R Recursive mode; copy whole directory trees.
-T Do not use automatic on-the-fly TAR mode for down-
loading whole directory trees. ncftpget uses TAR
whenever possible since this usually preserves sym-
bolic links and file permissions. TAR mode can also
result in faster transfers for directories contain-
ing many small files, since a single data connection
can be used rather than an FTP data connection for
each small file. The downside to using TAR is that
it forces downloading of the whole directory, even
if you had previously downloaded a portion of it
earlier, so you may want to use this option if you
want to resume downloading of a directory.
-r XX Redial a maximum of XX times until connected to the
remote FTP server.
-b Run in background (by submitting a batch job and
then spawning ncftpbatch).
-bb Similar to -b option, but only submits the batch
job. You will need to run ncftpbatch for the batch
job to be processed. This is useful if you already
have a ncftpbatch process running, or wish to have
better control of when batch jobs are processed.
For example, if you wanted to do background process-
ing of three files all on the same remote server, it
is more polite to use just one ncftpbatch process to
process the three jobs sequentially, rather than
having three ncftpbatch processes open three simul-
taneous FTP sessions to the same server.
-B XX Try setting the TCP/IP socket buffer size to XX
bytes.
-W XX Send raw FTP command XX after logging in.
ncftpget Last change: NcFTP Software 2
User Commands ncftpget(1)
-X XX Send raw FTP command XX after each file transferred.
-Y XX Send raw FTP command XX before logging out.
The -W, -X, and -Y options are useful for advanced
users who need to tweak behavior on some servers.
For example, users accessing mainframes might need
to send some special SITE commands to set blocksize
and record format information.
For these options, you can use them multiple times
each if you need to send multiple commands. For the
-X option, you can use the cookie %s to expand into
the name of the file that was transferred.
-o XX Set advanced option XX.
This option is used primarily for debugging. It
sets the value of an internal variable to an integer
value. An example usage would be: -o useFEAT=0,use-
CLNT=1 which in this case, disables use of the FEAT
command and enables the CLNT command. The available
variables include: usePASV, useSIZE, useMDTM, useR-
EST, useNLST_a, useNLST_d, useFEAT, useMLSD,
useMLST, useCLNT, useHELP_SITE, useSITE_UTIME, STAT-
fileParamWorks, NLSTfileParamWorks, require20,
allowProxyForPORT, doNotGetStartCWD.
DESCRIPTION
The purpose of ncftpget is to do file transfers from the
command-line without entering an interactive shell. This
lets you write shell scripts or other unattended processes
that can do FTP. It is also useful for advanced users who
want to retrieve files from the shell command line without
entering an interactive FTP program such as ncftp.
One particularly useful feature of this program is that you
can give it a uniform resource locator as the only argument
and the program will download that file. You can then copy
and paste from your web browser or newsreader and use that
URL. Example:
$ cd /tmp
$ ncftpget ftp://ftp.ncftp.com/pub/ncftp/ncftp.tar.Z
$ zcat ncftp.tar.Z | tar xf -
By default the program tries to open the remote host and
login anonymously, but you can specify a username and pass-
word information. The -u option is used to specify the
username to login as, and the -p option is used to specify
the password. If you are running the program from the
shell, you may omit the -p option and the program will
ncftpget Last change: NcFTP Software 3
User Commands ncftpget(1)
prompt you for the password.
Using the -u and -p options are not recommended, because
your account information is exposed to anyone who can see
your shell script or your process information. For example,
someone using the ps program could see your password while
the program runs.
You may use the -f option instead to specify a file with the
account information. However, this is still not secure
because anyone who has read access to the information file
can see the account information. Nevertheless, if you
choose to use the -f option the file should look something
like this:
host sphygmomanometer.ncftp.com
user gleason
pass mypasswd
Don't forget to change the permissions on this file so no
one else can read them.
The -d option is very useful when you are trying to diagnose
why a file transfer is failing. It prints out the entire
FTP conversation to the file you specify, so you can get an
idea of what went wrong. If you specify the special name
stdout as the name of the debugging output file, the output
will instead print to the screen. Example:
$ ncftpget -d stdout bowser.nintendo.co.jp . /pub/README
220: FTP server ready.
Connected to bowser.nintendo.co.jp.
Cmd: USER anonymous
331: Guest login ok, send your complete e-mail address
as password.
Cmd: PASS xxxxxxxx
230: Welcome!
Logged in to bowser.nintendo.co.jp as anonymous.
Cmd: TYPE I
200: Type set to I.
Cmd: PORT 192,168,9,37,6,76
200: PORT command successful.
Cmd: RETR /pub/README
550: /pub/README: File in use.
Cmd: QUIT
221: Goodbye.
Using ASCII mode is helpful when the text format of your
host differs from that of the remote host. For example, if
you are retrieving a .TXT file from a Windows-based host to
a UNIX system, you could use the -a flag which would use
ASCII transfer mode so that the file created on the UNIX
ncftpget Last change: NcFTP Software 4
User Commands ncftpget(1)
system would be in the UNIX text format instead of the
MS-DOS text format.
You can retrieve an entire directory tree of files by using
the -R flag. However, this will work only if the remote FTP
server is a UNIX server, or emulates UNIX's list output.
Example:
$ ncftpget -R ftp.ncftp.com /tmp /pub/ncftp
This would create a /tmp/ncftp hierarchy.
DIAGNOSTICS
ncftpget returns the following exit values:
0 Success.
1 Could not connect to remote host.
2 Could not connect to remote host - timed out.
3 Transfer failed.
4 Transfer failed - timed out.
5 Directory change failed.
6 Directory change failed - timed out.
7 Malformed URL.
8 Usage error.
9 Error in login configuration file.
10 Library initialization failed.
11 Session initialization failed.
AUTHOR
Mike Gleason, NcFTP Software (http://www.ncftp.com).
ATTRIBUTES
See attributes(5) for descriptions of the following
attributes:
ncftpget Last change: NcFTP Software 5
User Commands ncftpget(1)
+---------------+-------------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+-------------------+
|Availability | network/ftp/ncftp |
+---------------+-------------------+
|Stability | Volatile |
+---------------+-------------------+
SEE ALSO
ncftpput(1), ncftp(1), ftp(1), rcp(1), tftp(1).
LibNcFTP (http://www.ncftp.com/libncftp/).
NOTES
This software was built from source available at
https://java.net/projects/solaris-userland. The original
community source was downloaded from
ftp://ftp.ncftp.com/ncftp/older_ver-
sions/ncftp-3.2.3-src.tar.bz2
Further information about this software can be found on the
open source community website at
http://www.ncftp.com/ncftp/.
ncftpget Last change: NcFTP Software 6