Man page for ncftpput

July 9, 2007 – 11:21 pm

ncftpput


Section: User Commands (1)
Updated: NcFTP Software
Index
Return to Main Contents

 

NAME

ncftpput – Internet file transfer program for scripts
 

SYNOPSIS

ncftpput

[options]

remote–host remote–directory local–files…

ncftpput

–f
login.cfg

[options]

remote–directory local–files…

ncftpput

–c
remote–host remote–path–name

<
stdin

ncftpput

–C
remote–host local–path–name remote–path–name

 

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 service 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.
–m


Attempt to make the remote destination directory
before copying.
–t XX


Timeout after
XX

seconds.

–U XX


Use value
XX

for the umask.

–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 information.

–c


Read locally from standard input and write remotely to specified pathname.
–C


Similar to
–c,

except a local pathname is specified.

–A


Append to remote files, instead of overwriting them.
–T XX


Upload into temporary files prefixed by
XX.

–S XX


Upload into temporary files suffixed by
XX.

–R


Recursive mode; copy whole directory trees.
–r XX


Redial a maximum of
XX

times until connected to the remote FTP server.

–z/–Z


Do (do not) try to resume transfers.
The default is to
not

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 local file after successfully uploading it.
–y


Try using "SITE UTIME" to preserve timestamps on remote host.
Not many remote FTP servers support this, so it may not work.
–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 processing 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 simultaneous 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.

–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,useCLNT=1

which in this case, disables use of the
FEAT command and enables the CLNT command.
The available variables include:
usePASV,
useSIZE,
useMDTM,
useREST,
useNLST_a,
useNLST_d,
useFEAT,
useMLSD,
useMLST,
useCLNT,
useHELP_SITE,
useSITE_UTIME,
STATfileParamWorks,
NLSTfileParamWorks,
require20,
allowProxyForPORT,
doNotGetStartCWD.


 

DESCRIPTION

The
purpose of
ncftpput

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 send files from the shell command line without
entering an interactive FTP program such as
ncftp.

By default the program tries to open the remote host
and login anonymously, but you can specify a username
and password 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 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 mypassword


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.

Using ASCII mode is helpful when the text format of your host
differs from that of the remote host.
For example, if you are sending a text file from
a UNIX system to a Windows–based host, you could use the
–a

flag which would use ASCII transfer mode so that the file
created on the Windows machine would be in its native text
format instead of the UNIX text format.

You can upload an entire directory tree of files by
using the
–R

flag.
Example:



$ ncftpput –R pikachu.nintendo.co.jp /incoming /tmp/stuff


This would create a /incoming/stuff hierarchy on
the remote host.

The
–T

and
–S

options are useful when you want to upload file
to the remote host, but you don’t want to use
the destination pathname until the file is
complete.
Using these options, you will not destroy a
remote file by the same name until your file
is finished.
These options are also useful when a remote
process on the remote host polls a specific
filename, and you don’t want that process to
see that file until you know the file is
finished sending.
Here is an example that uploads to the file
/pub/incoming/README, using the filename
/pub/incoming/README.tmp as a temporary
filename:



$ ncftpput –S .tmp bowser.nintendo.co.jp /pub/incoming /a/README

A neat way to pipe the output from any local command into
a remote file is to use the
–c

option, which denotes that you’re using
stdin

as input.
The following example shows how to make a backup and store
it on a remote machine:



$ tar cf – / | ncftpput –c sonic.sega.co.jp /usr/local/backup.tar

 

DIAGNOSTICS

ncftpput

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).

 

SEE ALSO

ncftpget(1),

ncftp(1),

ftp(1),

rcp(1),

tftp(1).

LibNcFTP (http://www.ncftp.com/libncftp/).



 

Index



NAME

SYNOPSIS

OPTIONS


Command line flags:


DESCRIPTION

DIAGNOSTICS

AUTHOR

SEE ALSO



Post a Comment