windows 下 FTP 使用详解

        之前工作中经常需要从 Linux 服务器上上传和下载文件,比如将本地修改编译之后的 class 文件替换掉服务器上的文件进行测试,从服务器上取下文件进行验证修改之类的,看着那些老员工熟练的敲着 FTP 命令在不同服务器之间拷贝着数据,而自己只能使用一些 FTP 工具去实现,当时就感觉的很是羡慕,自己也就学了些简单的命令。之后在最近工作需要写一些 shell 脚本,其中就使用到较多的 FTP 命令,所以就打算把 FTP 系统的学习一下,下面就自己结合网上的资料和自己动手测试的成果,写的不好请见谅。

        FTP 命令行格式为:ftp [-v] [-d] [-i] [-n] [-g] [-s:filename] [-a] [host]

        解释:FTP 有两种使用方式,一是带 host 参数,会立即建立本地和远程指定主机的连接;二是不带 host 参数,则会进入 FTP 命令模式,然后可以使用 open 再去建立连接。其中 host 为远程主机 IP 地址或主机名。选项含义如下:

        -v 显示远程服务器的全部响应,并提供数据传送的统计信息。即 verbose 处于 on 状态。效果:当成功执行 cd、mkdir、delete 命令后,显示服务器发送过来的成功提示信息,以及在上传和下载文件时,会显示接收或发送的总字节数、用时和速度等。

        -d 允许调试、显示客户端和服务器端之间传递的全部 FTP 命令。即 debug 处于 on 状态。效果:每次发送 FTP 命令后,都会打印每次实际发送到远程主机的命令,比如输入的命令为 cd /root,但实际发送的命令却是 CWD /root。

        -i 多个文件传输期间关闭交互提示。即 prompt 处于 on 状态。效果:在使用 mget、mput 等命令传输文件时不会有交互提示了(即对每个传输文件输入确定信息 y 或 n)。

        -n 在与主机建立连接之后不自动登录。效果:输入命令 ftp -n host 后并不会要求你输入用户名和密码,即在建立和主机的连接之后就不再帮你自动登录,此时你需要手动输入 use 命令进行手动登录。

        -g 禁止使用通配符。即 glob 处于 off 状态。效果:如说明的那样,通配符不能使用了,比如在使用 mget *.txt 命令下载文件时,不再是下载主机目录下全部的 txt 格式的文件了,而是文件名为 *.txt 的单个文件。

        -s:filename 指定包含 FTP 命令的文件,在 FTP 命令启动后会自动执行这些命令,注意参数中不能出现空格(-s:空格filename 这样是不对的哦)。

        -a 绑定数据连接时,使用任意的本地接口。

        看完了 FTP 的一些参数的设置,下面说说具体的命令:

        1)! [cmd[agrs]]

        说明:如果没有添加参数的话则会退出 FTP 环境,同命令 bye。如果命令参数的话,则会使用本地环境执行该命令并将结果显示,且不退出 FTP 环境。比如执行命令:! ipconfig,结果是将用于windows 查看 IP 命令的结果是输出到 FTP 环境中。注意 ! 和之后的命令之间可以有也可以没有空格。

        2)? [command]

        说明:显示 ftp 命令的说明。command 指定需要有关说明的命令的名称,不加则显示全部的命令列表。

        3)append local-file [remote-file]

        说明:使用当前文件类型设置将本地文件附加到远程计算机上的文件中。其中 local-file 指定要添加的本地文件,remote-file 指定要添加 local-file 的远程计算机上的文件。如果省略了 remote-file,本地文件名将被用作远程文件名。

        4)ascii

        说明:将文件传送类型设置为默认的 ASCII。FTP 支持两种文件传送类型,ASCII 码和二进制图像。在传送文本文件时应该使用ASCII。

        5)bell

        说明:换响铃以在每个文件传送命令完成后响铃。默认情况下,铃声是关闭的。

        6)binary ( 或 bi)

        说明:将文件传输类型设置为二进制。

        7)bye(或by)

        说明:结束和远程计算机的 FTP 会话,也就是安全断开,退出 FTP。

        8)cd [remote-directory]

        说明:更改远程主机上的工作目录。

        9)close

        说明:结束与远程主机的 FTP 会话,即断开和主机的连接,但并不退出 FTP。 

        10)delete [remote-file]

        说明:删除远程主机上的指定文件。

        11)dir [remote-directory] [local-file]

        说明:显示远程主机工作目录下文件以及子目录列表。remote-directory 指定要查看远程主机列表的目录。如果没有指定目录,将使用远程主机的当前工作目录。Local-file 指定要存储列表的本地文件。如果没有指定,输出将显示在屏幕上。

        12)debug

        说明:开启或关闭调试,开启的时候打印每个发送到远程主机的命令。默认调试时关闭的。

        13)disconnect

        说明:与远程主机断开连接,但保持 FTP 提示,感觉和命令 close 相同。

        14)get remote-file [local-file]

        说明:使用当前文件传输类型,把远程主机上的文件拷贝到本地计算机上。remote-file 指定要复制的远程主机上的文件,local-file 指定要在本地计算机上使用的名称。如果没有指定,文件将命名为 remote-file。

        15)glob

        说明:开启或关闭文件通配符(* 和 ?)。默认是开启的。

        16)hash

        说明:转换每个传输数据为一个散列标记,默认数据块的大小为 2048 个字节,即每传输 2048 个字节就会在屏幕上显示一个(#)符号。默认情况下是关闭的。

        17)help [command]

        说明:同  ‘?’ 命令

        18)lcd [directory]

        说明:更改本地计算机的工作目录。很多命令在默认情况下都会使用到这个目录。其中 directory 是指要进入的本地计算机的目录,如果不添加这个参数,就会显示出本地计算机的工作目录。

        19)literal agrument[...]

        说明:只能执行 remotehelp 打印出的命令列表中的命令,比如 cd /home 命令得换成 CWD /home,且大小写敏感。

        20)ls [remote-directory] [local-file]

        说明:显示远程主机目录下文件和子目录的缩写列表地。remote-directory 指定要查看列表的远程主机的目录,如果没有指定,将使用远程主机的当前工作目录。local-file 指定要存储列表的本地文件,没有指定的话,则会输出在屏幕上。

        21)mdelete remote-file[...]

        说明:删除远程主机上的文件。remote-file 指要删除的文件,可以同时删除多个文件,多个文件之间用空格隔开。

        22)mdir remote-file[...] local-file

        说明:显示远程主机指定目录下文件和子目录列表。可以指定多个文件目录。remote-directory 指定要查看远程主机列表的目录。如果没有指定目录,将使用远程主机的当前工作目录。Local-file 指定要在本地计算机上使用的名称。如果没有指定,文件将命名为 remote-file。

        23)mget remote-file[...]

        说明:使用当前文件传输类型将远程主机上多个文件复制到本地计算机。remote-file 指远程主机上的文件,可以同时指定多个人间,或使用通配符将多人文件取下来,如果参数中的文件不存在的话,则直接跳过,不会有报错或提示之类的信息。

        24)mkdir directory

        说明:在远程主机当前工作目录下创建目录。directory 指要创建的目录名。

        25)mls remote-directory[...] local-file

        说明:显示远程主机目录下的文件和子目录列表。注意这里的 remote-directory 和 local-file 都是必须要加的。remote-directory 指定要查看远程主机列表的目录,Local-file 指定要存储列表的本地文件。

        26)mput local-file[...]

        说明:使用当前文件传输类型,将本地文件复制到远程主机上。参数使用上可以参考 mget 的使用。

        27)open host [port]

        说明:连接到指定的 FTP 服务器上。host 一般为远程主机的 IP 地址,port 则是指定的端口。

        28)prompt

        说明:开启或关闭交互提示。如果关闭交互提示,在使用 mget 及 mput 传输多个文件时,会允许您有选择地传输或下载文件。默认情况下,交互提示是关闭的。

        29)put local-file [remote-file]

        说明:使用当前文件传输类型,将本地文件复制到远程主机上。local-file 指定要复制的本地文件,remote-file 指定要在远程主机上使用的名称。如果没有指定,件将命名为 local-file。

        30)pwd

        说明:显示远程主机当前工作目录。

        31)quit

        说明:结束与远程主机的 FTP 会话,并退出 FTP 环境。

        32)quote argument[...]

        说明:同 literal。

        33)recv remote-file [local-file]

        说明:使用当前文件传输类型,将远程主机上文件复制到本地工作目录下。recv 和 get 相同。

        34)remotehelp [command]

        说明:显示远程命令的帮助。但是我不管输入什么命令都只会打印一个命令列表。不解!

        35)rename filename new-filename

        说明 :更改远程主机上指定文件的文件名。filename 指需要修改文件名的远程主机上文件的文件名,new-filename 新的文件名。

        36)rmdir directory

        说明:删除远程主机上指定目录。directory 为远程主机上要删除的目录。

        37)send local-file [remote-file]

        说明:使用当前文件传输类型,将本地文件复制到远程主机上。send 和 put 命令功能一样。

        38)status

        说明:显示 FTP连接和全部切换的当前状态。会显示通配符、交行提示和文件传输类型等状态。

        39)trace

        说明:开启或关闭数据包跟踪。在运行 FTP 命令是显示每个数据包的路由。

        40)type [type-name]

        说明:设置文件传输类型。type-name 指文件传输类型,没有加参数就是使用默认的 ASCII 作为传输类型。也可以省略 type,直接输入 type-name 也可以。

        41)user user-name password

        说明:指定登陆到远程主机的用户。user-name 指定登陆到远程主机的用户名,password 为指定用户的密码。

        42)verbose

        说明:开启或关闭显示远程服务器的全部响应。默认情况下,verbose 是关闭的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值