之前用过一个在VPS进行备份然后上传到FTP的脚本程序,刚好今天在把网站压缩包从VPS上传到FTP空间上。就从网络收集整理一下关于linux下或者在ssh下使用命令传送文件到ftp上的相关命令。我采用的是CentOS5.5的版本。其他版本应该类似。

1.关于FTP的安装:

这里注意的是并不是在服务器上安装ftp,而且安装ftp这个组件,当您在使用ftp命令时,提示此命令不存在,应该是没有安装,这里执行如下命令:

  1. yum install ftp   //centos等版本执行   
  2. sudo apt-get install ftp  //debian和ubuntu系列执行  

 2.Linux ftp命令的一般格式: ftp 主机名/IP      //其中“主机名/IP”是所要连接的远程机的主机名或IP地址。在命令行中,主机名属于选项,如果指定主机名,ftp将试图与远程机的ftp服务程序进行连接;如果没有指定主机名,ftp将给出提示符,等待用户输入命令。

出现如下界面:

此时在ftp>提示符后面输入open命令加主机名或IP地址,将试图连接指定的主机。

然后输入用户名,按回车,再输入密码。如果输入正确即可登录。登录成功出现如下界面:

此时就相当于进入远程FTP空间,就可以进行切换目录,上传文件,下载文件等操作。这儿要注意的是:远程机FTP的用户帐号的读写权限决定该用户在远程机上能下载什么文件和将上载文件放到哪个目录中。如果没有远程FTP的专用登录帐号,许多ftp站点设有可以使用的特殊帐号。这个帐号的登录名为anonymous(也称为匿名ftp),当使用这一帐号时,要求输入email地址作为口令。如果远程系统提供匿名ftp服务,用户使用这项服务可以登录到特殊的,供公开使用的目录。一般专门提供两个目录:pub目录和incoming目录。pub目录包含该站点供公众使用的所有文件,incoming目录存放上载到该站点的文件。

此时输入help命令可以查看所以可以使用的命令。

常用的命令主要如下: 

  1. ls 列出远程机的当前目录   
  2. cd 在远程机上改变工作目录   
  3. lcd 在本地机上改变工作目录   
  4. ascii 设置文件传输方式为ASCII模式   
  5. binary 设置文件传输方式为二进制模式   
  6. close 终止当前的ftp会话   
  7. hash 每次传输完数据缓冲区中的数据后就显示一个#号   
  8. get(mget) 从远程机传送指定文件到本地机   
  9. put(mput) 从本地机传送指定文件到远程机   
  10. open 连接远程ftp站点   
  11. ? 显示本地帮助信息   
  12. ! 转到Shell中   

 下面我们对这些命令进行举例讲解:

1.启动ftp会话

open命令用于打开一个与远程主机的会话。该命令的一般格式是:open 主机名/IP

如果在ftp 会话期间要与一个以上的站点连接,通常只用不带参数的ftp命令。如果在会话期间只想与一台计算机连接,那么在命令行上指定远程主机名或IP地址作为ftp命令的参数。
2.终止ftp会话

close、disconnect、和bye命令用于终止与远程机的会话。close和disronnect命令关闭与远程机的连接,但是使用户留在本地计算机的ftp程序中。和bye命令都关闭用户与远程机的连接,然后退出用户机上的ftp 程序。
3.改变目录

“cd [目录]”命令用于在ftp会话期间改变远程机上的目录,lcd命令改变本地目录,使用户能指定查找或放置本地文件的位置。

4.远程目录列表

ls命令列出远程目录的内容,就像使用一个shell中的ls命令一样。ls命令的一般格式是:ls [目录] [本地文件]

如果指定了目录作为参数,那么ls就列出该目录的内容。如果给出一个本地文件的名字,那么这个目录列表被放入本地机上您指定的这个文件中。
5.从远程系统获取(下载)文件

get和mget命令用于从远程机上获取文件。

get命令的一般格式为:get 文件名  比如下载a.zip  执行get a.zip 即可 

你还可以给出本地文件名,这个文件名是这个要获取的文件在您的本地机上创建时的文件名。如果您不给出一个本地文件名,那么就使用远程文件原来的名字。

mget命令一次获取多个远程文件。mget命令的一般格式为:mget 文件名列表

使用用空格分隔的或带通配符的文件名列表来指定要获取的文件,对其中的每个文件都要求用户确认是否传送。
6.向远程系统发送文件

put和mput命令用于向远程机发送文件。

Put命令的一般格式为:put 文件名  比如上传a.zip  执行put a.zip

mput命令一次发送多个本地文件,mput命令的一般格式为:mput 文件名列表

使用用空格分隔的或带通配符的文件名列表来指定要发送的文件。对其中的每个文件都要求用户确认是否发送。
7.改变文件传输模式

默认情况下,ftp按ASCII模式传输文件,用户也可以指定其他模式。ascii和brinary命令的功能是设置传输的模式。用ASCII模式传输文件对文本是非常好的,但为避免对二进制文件的破坏,可以以二进制模式传输文件。在这里,我建议大家设置通过brinary传输,否则容易出现500页面。
8.检查传输状态

传输大型文件时,可能会发现让ftp提供关于传输情况的反馈信息是非常有用的。hash命令使ftp在每次传输完数据缓冲区中的数据后,就在屏幕上打印一个#字符。本命令在发送和接收文件时都可以使用。
9.ftp中的本地命令

当您使用ftp时,字符“!”用于向本地机上的命令shell传送一个命令。如果用户处在ftp会话中,需要shell做某些事,就很有用。例如用户要建立一个目录来保存接收到的文件。如果输入!mkdir new_dir,那么Linux就在用户当前的本地目录中创建一个名为new_dir 的目录。

这些就是一些常用的FTP命令。希望可以对你有用!

Linux下通过命令向FTP空间传送数据的相关命令

发表评论

电子邮件地址不会被公开。 必填项已用*标注