1.系统环境

  FTP客户端:Windows7旗舰版,管理员权限命令行;

  FTP服务端:CentOS 6.5,VSFTP,端口 21(默认)

2.登陆FTP

  1. 在命令行下输入 ftp,出现 ftp>即进入FTP命令行
  2. open FTP的IP地址/域名 例如 open 169.254.234.241 (当然有最简单的方式 直接在命令行下 ftp FTP的IP地址/域名
  3. 按照提示输入用户名和密码,完成登陆
Microsoft Windows [版本 6.1.]
版权所有 (c) Microsoft Corporation。保留所有权利。 C:\Users\Administrator>ftp
ftp> open 169.254.234.241
连接到 169.254.234.241。
Welcome to blah FTP service.
用户(169.254.234.241:(none)): wy
Please specify the password.
密码:
Login successful.
ftp>

3.上传一个文件

  1. put(或者 send,上传多个使用 mput) 文件名(包含路径) 例如 put C:\Users\Administrator\Documents\Myself.pub
  2. ls(或者 dir) 查看当前目录文件
ftp> put C:\Users\Administrator\Documents\Myself.pub
PORT command successful. Consider using PASV.
Ok to send data.
Transfer complete.
ftp: 发送 字节,用时 .02秒 .56千字节/秒。
ftp> send C:\Users\Administrator\Documents\Myself
PORT command successful. Consider using PASV.
Ok to send data.
Transfer complete.
ftp: 发送 字节,用时 .00秒 .00千字节/秒
ftp> ls
PORT command successful. Consider using PASV.
Here comes the directory listing.
Myself
Myself.pub
Directory send OK.
ftp: 收到 字节,用时 .00秒 .00千字节/秒。
ftp>

  很显然,send 的速度比 put 快不少。但是他们两个的区别我没有详细的查。

4.下载一个文件

  1. lcd 本地目录路径 设置当前工作路径,也就是你要把文件下载到哪。默认是在当前使用命令行的用户的主目录。我的是 C:\Users\Administrator。也可以使用 !chdir 查看当前目录。
  2. cd 服务器目录 进入到你要下载的文件在服务器端的目录位置
  3. get(下载多个用 mget) 文件名 下载该文件。例如 get Myself
  4. !dir 查看当前目录文件,就能看到你刚才下载的文件啦
ftp> dir
PORT command successful. Consider using PASV.
Here comes the directory listing.
-rw-r--r-- Dec : Myself
-rw-r--r-- Dec : Myself.pub
Directory send OK.
ftp: 收到 字节,用时 .00秒 .00千字节/秒。
ftp> !cd C:\Users\Administrator\Desktop
ftp> !chdir
C:\Users\Administrator
ftp> lcd C:\Users\Administrator\Desktop
目前的本地目录 C:\Users\Administrator\Desktop。
ftp> !chdir
C:\Users\Administrator\Desktop
ftp> get Myself
PORT command successful. Consider using PASV.
Opening ASCII mode data connection for Myself ( bytes).
Transfer complete.
ftp: 收到 字节,用时 .00秒 .00千字节/秒。
ftp> dir
PORT command successful. Consider using PASV.
Here comes the directory listing.
-rw-r--r-- Dec : Myself
-rw-r--r-- Dec : Myself.pub
Directory send OK.
ftp: 收到 字节,用时 .00秒 .00千字节/秒。
ftp> !dir
驱动器 C 中的卷没有标签。
卷的序列号是 941F-307E C:\Users\Administrator\Desktop 的目录 // : <DIR> .
// : <DIR> ..
// : Evernote.lnk
// : , FlashFXP.lnk
// : , Git Shell.lnk
// : GitHub.appref-ms
// : , Myself
// : , SecureCRT.lnk
个文件 , 字节
个目录 ,,, 可用字节
ftp>

5.断开连接

  bye 就是这样。

ftp> status
连接到 169.254.234.241。
类型: ascii;详细: 开 ;铃声: 关 ;提示: 开 ;通配: 开
调试: 关 ;哈希标记打印: 关 。
ftp> bye
Goodbye. C:\Users\Administrator>

6.总结

  这里就是拿一个例子来说明了一下简单的上传和下载命令的使用。使用 help 和 help [Command] 来查看对应命令的解释。最后给出常用命令的说明和格式。

命令 说明 格式 参数说明
bye 结束与远程计算机的 FTP 会话并退出 ftp bye  
cd 更改远程计算机上的工作目录 cd RemoteDirectory
RemoteDirectory
指定要更改的远程计算机上的目录。
dir 显示远程计算机上的目录文件和子目录列表 dir [RemoteDirectory] [LocalFile]
RemoteDirectory
指定要查看其列表的目录。如果没有指定目录,将使用远程计算机中的当前工作目录。

LocalFile
指定要存储列表的本地文件。如果没有指定本地文件,则屏幕上将显示结果。

get

使用当前文件传输类型将远程文件复制到本地计算机。如果没有指定 LocalFile,文件就会赋以 RemoteFile 名。get 命令与 recv 相同。

get RemoteFile [LocalFile]
RemoteFile
指定要复制的远程文件。

LocalFile
指定要在本地计算机上使用的文件名。
lcd 更改本地计算机上的工作目录。默认情况下,工作目录是启动 ftp 的目录 lcd [Directory]
Directory
指定要更改的本地计算机上的目录。如果没有指定 Directory,将显示本地计算机中的当前工作目录。
ls 显示远程目录上的文件和子目录的简短列表 ls [RemoteDirectory] [LocalFile]  
RemoteDirectory
指定要查看其列表的目录。如果没有指定目录,将使用远程计算机中的当前工作目录。

LocalFile
指定要存储列表的本地文件。如果没有指定本地文件,将在屏幕上显示结果。
open 与指定的 FTP 服务器连接。可以使用 IP 地址或计算机名(两种情况下都必须使用 DNS 服务器或主机文件)指定 Computer。 open Computer [Port]
Computer
必需。指定试图要连接的远程计算机。

Port
指定用于联系 FTP 服务器的 TCP 端口号。默认情况下,使用 TCP 端口号 21。
put(send)

使用当前文件传输类型将本地文件复制到远程计算机上。put 命令与 send 命令相同。如果没有指定 RemoteFile,文件就会赋以 LocalFile 名。

put LocalFile [RemoteFile]
LocalFile
指定要复制的本地文件。

RemoteFile
指定要在远程计算机上使用的名称。

更多详细的说明请看http://technet.microsoft.com/zh-cn/library/cc756013(v=ws.10).aspx 和 http://blog.csdn.net/chaoqunz/article/details/5973317

Windows命令行使用FTP的更多相关文章

  1. 探索Windows命令行系列(5):几个实用的命令例解

    1.关机命令(shutdown) 2.管理 Windows 服务(sc) 3.管理任务进程(tasklist.taskkill) 4.显示 TCP/IP 配置值(ipconfig) 5.网络诊断工具( ...

  2. git代理,windows命令行代理,linux命令行代理

    下载不动设置代理:git config --global http.proxy http://127.0.0.1:1080git config --global https.proxy https:/ ...

  3. windows命令行下简单使用javac、java、javap详细演示

    最近重新复习了一下java基础,在使用javap的过程中遇到了一些问题,这里便讲讲对于一个类文件如何编译.运行.反编译的.也让自己加深一下印象. 如题,首先我们在桌面,开始->运行->键入 ...

  4. Windows命令行中使用SSH连接Linux

    转自 http://www.linuxidc.com/Linux/2014-02/96625.htm 1.下载: openssh for Winodws: 免费下载地址在 http://linux.l ...

  5. Windows命令行语法说明

    摘自:http://lavasoft.blog.51cto.com/62575/1113234   Windows命令行语法说明   说来惭愧,用windows这么多年了,对其命令行语法看得似懂非懂, ...

  6. Windows命令行命令集锦

    原文:Windows命令行命令集锦 转自:http://www.me2wg.com/bbs/forum.php?mod=viewthread&tid=15830 winver--------- ...

  7. 在windows命令行窗口下执行:查看所有的端口占用情况

    开始--运行--cmd 进入命令提示符 输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选&qu ...

  8. 探索Windows命令行系列(2):命令行工具入门

    1.理论基础 1.1.命令行的前世今生 1.2.命令执行规则 1.3.使用命令历史 2.使用入门 2.1.启动和关闭命令行 2.2.执行简单的命令 2.3.命令行执行程序使用技巧 3.总结 1.理论基 ...

  9. 探索Windows命令行系列(6):活用批处理解决实际问题

    1.批量修改文件名 2.批量重启服务 3.全盘搜索指定文件 3.1.全盘搜索名称为 mm.jpg 的文件,获取其全路径 3.2.查找系统中所有名称以 .docx 结尾的文件 4.调用可执行程序 4.1 ...

随机推荐

  1. <span> <div> 局部 keydown ,keyup事件。页面部分div $(document) 无效,可能焦点,添加焦点。

    前天改一个bug, js 实现的一个 面板拖拉,左右各两个列表,中间面板画线连接,页面左侧列表选中后,key 事件无效.右侧选中确有效,很奇怪,查看源码,左侧选中后,$(document).on(&q ...

  2. SOCI、LiteSQL、POCO数据库访问类库对比

    最近在做视频的开发,其中视频的设备接入管理服务器.流媒体管理服务器.中心服务器都涉及到了数据库的操作,同时需要兼容大多数版本的数据库,包括mysql.sqlite.oracle.公司原来使用的是ado ...

  3. HDU 1004 ballons(map)

    题意:输出颜色最多的那个颜色. 思路:水题一道. #include <iostream> #include <string> #include <map> #inc ...

  4. HDU4628+状态压缩DP

    /* 状态压缩DP dp[ i ]:达到i状态的最小step. 题意:每次可以去掉一个回文串,求最少几步能取完. */ #include<stdio.h> #include<stri ...

  5. linux MySQL安装配置

    执行下面的命令初始化授权表: ./scripts/mysql_install_db --user=mysql

  6. Java List详解

    就是一种集合对象,将所有的对象集中到一起存储. list里面可以放java对象,可以直接放值. List list = new ArrayList(); list.add("AAA" ...

  7. POJ2533——Longest Ordered Subsequence(简单的DP)

    Longest Ordered Subsequence DescriptionA numeric sequence of ai is ordered if a1 < a2 < ... &l ...

  8. Hadoop集群安装配置教程_Hadoop2.6.0_Ubuntu/CentOS

    摘自:http://www.powerxing.com/install-hadoop-cluster/ 本教程讲述如何配置 Hadoop 集群,默认读者已经掌握了 Hadoop 的单机伪分布式配置,否 ...

  9. log4j学习一:解决系统日志错位问题

    这两天,开发的系统遇到了一个非常奇怪的问题,我们的前台程序会将日志时而输出到webapp.log,时而输出到其他日志文件如AlarmThreshold.log中,初看并无规律,但秉着“机器永远不会出错 ...

  10. LeetCode Delete Node in a Linked List (删除链表中的元素)

    题意:给一个将要删除的位置的指针,要删除掉该元素.被删元素不会是链尾(不可能删得掉). 思路:将要找到前面的指针是不可能了,但是可以将后面的元素往前移1位,再删除最后一个元素. /** * Defin ...