OnWorks favicon

ncftpget - Online in the Cloud

Run ncftpget in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command ncftpget that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator



ncftpget - Internet file transfer program for scripts


ncftpget [options] remote-host local-directory remote-files...

ncftpget [options] bookmark-name 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 > stdout


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.

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

-c Read from remote host and write locally to standard out.

-C Read from remote host and write locally to specified pathname.

-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 downloading whole directory trees.
ncftpget uses TAR whenever possible since this usually preserves symbolic links
and file permissions. TAR mode can also result in faster transfers for
directories containing 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 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,


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 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 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 xxx
230: Welcome!
Logged in to bowser.nintendo.co.jp as anonymous.
200: Type set to I.
Cmd: PORT 192,168,9,37,6,76
200: PORT command successful.
550: /pub/README: File in use.
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 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.

$ ncftpget -R ftp.ncftp.com /tmp /pub/ncftp

This would create a /tmp/ncftp hierarchy.


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.

Use ncftpget online using onworks.net services

Free Servers & Workstations

Download Windows & Linux apps

  • 1
    Boost C++ Libraries
    Boost C++ Libraries
    Boost provides free portable
    peer-reviewed C++ libraries. The
    emphasis is on portable libraries which
    work well with the C++ Standard Library.
    See http://www.bo...
    Download Boost C++ Libraries
  • 2
    VirtualGL redirects 3D commands from a
    Unix/Linux OpenGL application onto a
    server-side GPU and converts the
    rendered 3D images into a video stream
    with which ...
    Download VirtualGL
  • 3
    Library to enable user space
    application programs to communicate with
    USB devices. Audience: Developers, End
    Users/Desktop. Programming Language: C.
    Download libusb
  • 4
    SWIG is a software development tool
    that connects programs written in C and
    C++ with a variety of high-level
    programming languages. SWIG is used with
    Download SWIG
  • 5
    WooCommerce Nextjs React Theme
    WooCommerce Nextjs React Theme
    React WooCommerce theme, built with
    Next JS, Webpack, Babel, Node, and
    Express, using GraphQL and Apollo
    Client. WooCommerce Store in React(
    contains: Products...
    Download WooCommerce Nextjs React Theme
  • 6
    Package repo for ArchLabs This is an
    application that can also be fetched
    It has been hosted in OnWorks in...
    Download archlabs_repo
  • More »

Linux commands