NcFTP is a set of FTP programs that includes the main, CLI, ftp client program ncftp and the separate CLI utilities ncftpget, ncftpput, ncftpls, a batch processing daemon ncftpbatch, and a bookmark manager called ncftpbookmarks.
NcFTP's ftp client supports tab-completion and command line history.
One of ncftp's strengths is its ability to be automated. For example, to do an upload of pictures from the current directory to a server,
ncftpput -u username -p password ftp.server.com www/pictures *.jpg
This can be placed in a batch file with little difficulty, while the equivalent commands in regular FTP would be more difficult to script.