一、ftp简介
FTP(FileTransfer Protocol)是在客户端和服务器之间传输文件的标准网络协议。FTP协议建立在C-S模型之上,在客户端和服务器之间使用单独的控制和数据连接。FTP用户可通过明文登陆协议来认证,通常是以用户名和密码形式,不过在服务器配置允许的情况下,也可以实现匿名连接。为了保护用户名和密码,以及对内容进行加密,FTP通常使用SSL/TLS来保证其安全性,即FTPS,有时也会用另一种不同技术的SSH文件传输协议,即SFTP。
ftp本就就是用来做数据传输的协议,只要按照协议规定就能从两个主机之间传输数据。
二、ftp的常用命令
从“开始”→“程序”→“附件”→“命令提示符”,打开DOS命令窗口,就可以输入FTP命令了。
1、登录FTP服务器
方法:输入命令 ftp host
解释:其中host是FTP服务器的域名或IP地址.
注意:1 登录时先是显示一些欢迎信息,然后会要求输入用户名和密码
注意:2 在输入密码时,屏幕没有任何显示,但已经输入了,不要认为出错。登录成功后就可以访问FTP服务器上的文件了。
如果由于用户名或密码错误导致登录失败,可以用user命令重新登录。
注意:3 登陆成功时会出现"ftp>"提示符
2、查看FTP服务器上的文件
- dir 命令:显示目录和文件列表。
- ls 命令:显示简易的文件列表。
- cd 命令:进入指定的目录。
注意:dir命令可以使用通配符“*”和“?”,比如,显示当前目录中所有扩展名为jpg的文件,可使用命令 dir *.jpg。
注意:cd命令中必须带目录名。比如 cd main 表示进入当前目录下的main子目录,cd .. 表示退回上一级子目录。
3、下载文件
上传和下载文件时应该使用正确的传输类型,FTP的传输类型分为ASCII码方式和二进制方式两种,对.txt、.htm等文件应采用ASCII码方式传输,对.exe或图片、视频、音频等文件应采用二进制方式传输。在默认情况下,FTP为ASCII码传输方式。
- type 命令:查看当前的传输方式。
- ascii 命令:设定传输方式为ASCII码方式。
- binary 命令:设定传输方式为二进制方式。可以使用缩写bin命令。
注意:以上命令都不带参数。并且传出文件之前一定要注意设定传输数据格式,否则会出现传输失败。
- get 命令:下载指定文件。
- get命令的格式:get filename [newname],filename为下载的FTP服务器上的文件名,newname为保存在本地计算机上时使用的名字,如果不指定newname,文件将以原名保存。
- mget 命令:下载多个文件。
- mget命令的格式:mget filename [filename ……]。
- mget命令支持通配符“*”和“?”,比如:mget *.mp3 表示下载FTP服务器当前目录下的所有扩展名为mp3的文件。
4、上传文件
- put 命令:上传指定文件。
- put命令的格式:put filename [newname],filename为上传的本地文件名,newname为上传至FTP服务器上时使用的名字,如果不指定newname,文件将以原名上传。
- 上传文件前,应该根据文件的类型设置传输方式,本机的工作目录也应该设置为上传文件所在的目录。
5、结束并退出FTP
- bye 命令:退出ftp会话。
- close 命令:结束与服务器的FTP会话。
- quit 命令:结束与服务器的FTP会话并退出FTP环境。
6、其它FTP命令
- pwd 命令:查看FTP服务器上的当前工作目录。
- rename filename newfilename 命令:重命名FTP服务器上的文件。
- delete filename 命令:删除FTP服务器上的文件。
- help [cmd] 命令:显示FTP命令的帮助信息,cmd是命令名,如果不带参数,则显示所有FTP命令。
三、实例演示
要从之一host1传输/home/sysad/test.tar文件到host2地址的/root/目录下。那么我们就可以这么做。
- 登陆host1,cd到/home/sysad/目录下
- ftp host2,输入用户名和密码,进入ftp会话
- 使用bin命令,改变传输类型为二进制
- 使用命令ftp ./test.tar /root/test.tar
- 传输完成后使用bye命令,退出ftp