本文中,介绍在 Linux shell 中如何使用 ftp 命令。包括如何连接 FTP 服务器,上传或下载文件以及创建文件夹。尽管现在有许多不错的 FTP 桌面应用,但是在服务器、SSH、远程会话中命令行 ftp 命令还是有很多应用的。比如。需要服务器从 ftp 仓库拉取备份。

想要连接 FTP 服务器,在命令上中先输入<code>ftp</code>然后空格跟上 FTP 服务器的域名 'domain.com' 或者 IP 地址
<code>ftp domain.com</code>
<code>ftp 192.168.0.1</code>
<code>ftp [email protected]</code>
注意: 本例中使用匿名服务器。
替换下面例子中 IP 或域名为你的服务器地址。
FTP 登录
绝大多数的 FTP 服务器是使用密码保护的,因此这些 FTP 服务器会询问'username'和'password'.
如果你连接到被称作匿名 FTP 服务器(LCTT 译注:即,并不需要你有真实的用户信息即可使用的 FTP 服务器称之为匿名 FTP 服务器),可以尝试<code>anonymous</code>作为用户名以及使用空密码:
<code>Name: anonymous</code>
<code>Password:</code>
之后,终端会返回如下的信息:
<code>230Login successful.</code>
<code>Remote system type is UNIX.</code>
<code>Using binary mode to transfer files.</code>
<code>ftp></code>
登录成功。
FTP 登录成功
FTP 命令可以列出、移动和创建文件夹,如同我们在本地使用我们的电脑一样。<code>ls</code>可以打印目录列表,<code>cd</code>可以改变目录,<code>mkdir</code>可以创建文件夹。
<code>ftp>ls</code>
服务器将返回:
<code>200 PORT command successful.Considerusing PASV.</code>
<code>150Here comes the directory listing.</code>
<code>directory list</code>
<code>....</code>
<code>226Directory send OK.</code>
打印目录
改变目录可以输入:
<code>ftp>cd directory</code>
服务器将会返回:
<code>250Directory succesfully changed.</code>
FTP中改变目录
在下载一个文件之前,我们首先需要使用<code>lcd</code>命令设定本地接受目录位置。
<code>lcd /home/user/yourdirectoryname</code>
如果你不指定下载目录,文件将会下载到你登录 FTP 时候的工作目录。
现在,我们可以使用命令 get 来下载文件,比如:
<code>getfile</code>
文件会保存在使用lcd命令设置的目录位置。
服务器返回消息:
<code>local:file remote:file</code>
<code>150Opening BINARY mode data connection forfile(xxx bytes).</code>
<code>226File send OK.</code>
<code>XXX bytes received in x.xx secs (x.xxx MB/s).</code>
使用FTP下载文件
下载多个文件可以使用通配符及 <code>mget</code> 命令。例如,下面这个例子我打算下载所有以 .xls 结尾的文件。
<code>mget *.xls</code>
完成 FTP 连接后,FTP 同样可以上传文件
使用 <code>put</code>命令上传文件:
<code>put file</code>
当文件不再当前本地目录下的时候,可以使用绝对路径:
<code>put /path/file</code>
同样,可以上传多个文件:
<code>mput *.xls</code>
完成FTP工作后,为了安全起见需要关闭连接。有三个命令可以关闭连接:
<code>bye</code>
<code>exit</code>
<code>quit</code>
任意一个命令可以断开FTP服务器连接并返回:
<code>221Goodbye</code>
需要更多帮助,在使用 ftp 命令连接到服务器后,可以使用<code>help</code>获得更多帮助。
本文转自 技术花妞妞 51CTO博客,原文链接:http://blog.51cto.com/xiaogongju/1981507