Linux 终端访问 FTP 及 上传下载 文件[转]
1. Linux 终端连接FTP
[oracle@Dave ~]$ ftp 10.85.7.97
Connected to 10.85.7.97.
220 Serv-U FTP Server v6.4 for WinSock ready...
500 'AUTH': command not understood.
500 'AUTH': command not understood.
KERBEROS_V4 rejected as an authentication type
Name (10.85.7.97:oracle): super
331 User name okay, need password.
Password: -- Linux 的密码是不回显的
230 User logged in, proceed.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
如果FTP 允许匿名用户,那么用户名要输入anonymous,密码任意。 不能直接敲回车。
2. 查看FTP 命令
ftp> ?
Commands may be abbreviated. Commands are:
! cr mdir proxy send
$ delete mget sendport site
account debug mkdir put size
append dir mls pwd status
ascii disconnect mode quit struct
bell form modtime quote system
binary get mput recv sunique
bye glob newer reget tenex
case hash nmap rstatus trace
ccc help nlist rhelp type
cd idle ntrans rename user
cdup image open reset umask
chmod lcd passive restart verbose
clear ls private rmdir ?
close macdef prompt runique
cprotect mdelete protect safe
可以通过help command 查看每个命令的说明
ftp> help put
put send one file
ftp> help mput
mput send multiple files
3. 上传文件
Put命令:格式:put local-file [remote-file] 将一个文件上传到ftp
Mput命令:格式:mput local-files 将本地主机中一批文件传送至远端主机.
注意:mput命令只能将当前本地目录下的文件上传到FTP上的当前目录。比如,在 /root/dave下运行的ftp命令,则只有在/root/dave下的文件linux才会上传到服务器上的当前目录下。
Put 代码示例:
ftp> pwd -- 显示FTP上当前路径
257 "/" is current directory.
ftp> ls -- 显示当前目录下的文件
227 Entering Passive Mode (10,85,7,97,16,141)
150 Opening ASCII mode data connection for /bin/ls.
drw-rw-rw- 1 user group 0 Aug 17 16:11 .
drw-rw-rw- 1 user group 0 Aug 17 16:11 ..
-rw-rw-rw- 1 user group 1433088 Feb 5 2010 ASPAJAXExtSetup_PConline_PConline.msi
-rw-rw-rw- 1 user group 197626837 Mar 8 10:00 DelphiV7.0.zip
drw-rw-rw- 1 user group 0 Jul 9 10:17 HHT
-rw-rw-rw- 1 user group 9235148 Dec 24 2009 Install_HSKey_V1.3.exe
-rw-rw-rw- 1 user group 47316992 May 27 16:38 Release_4.rar
ftp> mkdir Dave -- 创建文件夹Dave
257 "/Dave" directory created.
ftp> cd Dave -- 进入文件夹Dave
250 Directory changed to /Dave
ftp> pwd -- 显示当前目录
257 "/Dave" is current directory.
ftp> lcd -- 显示当前本地的路径,我们可以将这个路径下的这个文件上传到FTP服务器的相关位置
Local directory now /home/oracle
ftp> ! -- 退出当前的窗口,返回Linux 终端,当我们退出终端的时候,又会返回到FTP上。
[oracle@Dave ~]$ ls -- 显示当前目录下的文件
dead.letter scripts sqlnet.log
[oracle@Dave ~]$ vi Dave -- 创建文件 Dave
[oracle@Dave ~]$ vi DBA -- 创建文件 DBA
[oracle@Dave ~]$ ls -- 显示文件夹里的内容,等会我们将这些文件copy到FTP上
Dave DBA dead.letter scripts sqlnet.log
[oracle@Dave ~]$ exit -- 退出终端,返回FTP命令行
exit
ftp> lcd
Local directory now /home/oracle
ftp> put DBA DBA -- 将刚才创建的文件DBA 上传到ftp的当前目录上并命名为DBA。
local: DBA remote: DBA
227 Entering Passive Mode (10,85,7,97,16,156)
150 Opening BINARY mode data connection for DBA.
226 Transfer complete.
5 bytes sent in 3.3e-05 seconds (1.5e+02 Kbytes/s)
ftp> put DBA /Dave/SFDBA -- 将刚才创建的文件DBA 上传到ftp的当前目录上并重命名为SFDBA。
local: DBA remote: /Dave/SFDBA
227 Entering Passive Mode (10,85,7,97,16,158)
150 Opening BINARY mode data connection for SFDBA.
226 Transfer complete.
5 bytes sent in 1.8e-05 seconds (2.7e+02 Kbytes/s)
ftp> put /home/oracle/DBA /test/SFDBA
local: /home/oracle/DBA remote: /test/SFDBA
227 Entering Passive Mode (10,85,7,97,16,163)
150 Opening BINARY mode data connection for SFDBA.
226 Transfer complete.
5 bytes sent in 2.2e-05 seconds (2.2e+02 Kbytes/s)
ftp> cd test
250 Directory changed to /test
ftp> ls
227 Entering Passive Mode (10,85,7,97,16,169)
150 Opening ASCII mode data connection for /bin/ls.
drw-rw-rw- 1 user group 0 Aug 17 17:11 .
drw-rw-rw- 1 user group 0 Aug 17 17:11 ..
-rw-rw-rw- 1 user group 5 Aug 17 17:11 SFDBA
-rw-rw-rw- 1 user group 5508 Aug 17 16:21 sqlnet.log
226 Transfer complete.
Mput 示例代码:
ftp> cd Dave
250 Directory changed to /Dave
ftp> mput *
mput alert_log.txt? -- 这里每个文件都要确认,按回车键就可以了
227 Entering Passive Mode (10,85,7,97,16,196)
150 Opening BINARY mode data connection for alert_log.txt.
226 Transfer complete.
712 bytes sent in 2.9e-05 seconds (2.4e+04 Kbytes/s)
mput alert_newccs.hist?
227 Entering Passive Mode (10,85,7,97,16,197)
150 Opening BINARY mode data connection for alert_newccs.hist.
226 Transfer complete.
9321666 bytes sent in 0.78 seconds (1.2e+04 Kbytes/s)
mput alert_newccs.log?
227 Entering Passive Mode (10,85,7,97,16,198)
150 Opening BINARY mode data connection for alert_newccs.log.
226 Transfer complete.
21707 bytes sent in 0.0014 seconds (1.5e+04 Kbytes/s)
ftp> ls -- 显示目录下的文件
227 Entering Passive Mode (10,85,7,97,16,217)
150 Opening ASCII mode data connection for /bin/ls.
drw-rw-rw- 1 user group 0 Aug 17 17:22 .
drw-rw-rw- 1 user group 0 Aug 17 17:22 ..
-rw-rw-rw- 1 user group 5 Aug 17 17:09 SFDBA
-rw-rw-rw- 1 user group 712 Aug 17 17:21 alert_log.txt
-rw-rw-rw- 1 user group 9321666 Aug 17 17:21 alert_newccs.hist
-rw-rw-rw- 1 user group 21707 Aug 17 17:21 alert_newccs.log
226 Transfer complete.
ftp> delete SFDBA --删除SFDBA 文件
250 DELE command successful.
ftp> mdelete a* -- 批量删除文件
mdelete alert_log.txt? -- 每个文件都要确认
250 DELE command successful.
mdelete alert_newccs.hist?
250 DELE command successful.
mdelete alert_newccs.log?
250 DELE command successful.
4. 下载文件
同样也有2个命令: get 和 mget。 Mget 用户批量下载。
格式:get [remote-file] [local-file]
mget [remote-files]
同样,mget 是将文件下载到本地的当前目录下。
Get 示例:
ftp> get /test/SFDBA /home/SFDBA
local: /home/SFDBA remote: /test/SFDBA
local: /home/SFDBA: Permission denied --Linux对权限控制的很严格,下载的时候是否有对应文件夹的写权限
ftp> get /test/SFDBA /home/oracle/SFDBA
local: /home/oracle/SFDBA remote: /test/SFDBA
227 Entering Passive Mode (10,85,7,97,17,0)
150 Opening BINARY mode data connection for SFDBA (5 Bytes).
226 Transfer complete.
5 bytes received in 6.2e-05 seconds (79 Kbytes/s)
ftp> !
[oracle@Dave bdump]$ cd /home/oracle/
[oracle@Dave ~]$ ls
Dave DBA dead.letter scripts SFDBA sqlnet.log
Mget 示例:
ftp> ls
227 Entering Passive Mode (10,85,7,97,17,10)
150 Opening ASCII mode data connection for /bin/ls.
drw-rw-rw- 1 user group 0 Aug 17 17:38 .
drw-rw-rw- 1 user group 0 Aug 17 17:38 ..
-rw-rw-rw- 1 user group 5 Aug 17 17:38 DBA
-rw-rw-rw- 1 user group 12 Aug 17 17:38 Dave
-rw-rw-rw- 1 user group 5 Aug 17 17:11 SFDBA
226 Transfer complete.
ftp> mget *
mget DBA? -- 每个文件都要确认, 按回车即可
227 Entering Passive Mode (10,85,7,97,17,12)
150 Opening BINARY mode data connection for DBA (5 Bytes).
226 Transfer complete.
5 bytes received in 8.1e-05 seconds (60 Kbytes/s)
mget Dave?
227 Entering Passive Mode (10,85,7,97,17,13)
150 Opening BINARY mode data connection for Dave (12 Bytes).
226 Transfer complete.
12 bytes received in 8.3e-05 seconds (1.4e+02 Kbytes/s)
mget SFDBA?
227 Entering Passive Mode (10,85,7,97,17,14)
150 Opening BINARY mode data connection for SFDBA (5 Bytes).
226 Transfer complete.
5 bytes received in 9e-05 seconds (54 Kbytes/s)
ftp> !
[oracle@Dave ~]$ ls
Dave DBA dead.letter scripts SFDBA sqlnet.log
说明的地方:FTP 当前目录下的文件下载到本地的当前目录。
5. 断开FTP 连接
Bye命令或者quit命令:中断与服务器的连接。
ftp> bye
221 Goodbye!
以上只是Linux 终端访问ftp及上传下载的几个简单示例。 不过一般这几个应该够用了。其他功能感兴趣的自己研究。
转载:http://blog.csdn.net/tianlesoftware/article/details/5818990
Linux 终端访问 FTP 及 上传下载 文件[转]的更多相关文章
- Linux 终端访问 FTP 及 上传下载 文件
今天同事问我一个问题,在Linux 下访问FTP,并将文件上传上去. 我之前一直是用WinSCP工具的. 先将文件从linux copy到windows下,然后在传到ftp上.google 一下. 方 ...
- linux下常用FTP命令 上传下载文件【转】
1. 连接ftp服务器 格式:ftp [hostname| ip-address]a)在linux命令行下输入: ftp 192.168.1.1 b)服务器询问你用户名和密码,分别输入用户名和相应密码 ...
- Linux 终端訪问 FTP 及 上传下载 文件
今天同事问我一个问题,在Linux 下訪问FTP,并将文件上传上去. 我之前一直是用WinSCP工具的. 先将文件从linux copy到windows下,然后在传到ftp上. google 一下. ...
- shell通过ftp实现上传/下载文件
直接代码,shell文件名为testFtptool.sh: #!/bin/bash ########################################################## ...
- 在linux命令行利用SecureCRT上传下载文件
一般来说,linux服务器大多是通过ssh客户端来进行远程的登陆和管理的,使用ssh登陆linux主机以后,如何能够快速的和本地机器进行文件的交互呢,也就是上传和下载文件到服务器和本地?与ssh有关的 ...
- 使用批处理文件在FTP服务器 上传下载文件
1.从ftp服务器根目录文件夹下的文件到指定的文件夹下 格式:ftp -s:[配置文件] [ftp地址] 如:ftp -s:c:\vc\ftpconfig.txt 192.168.1.1 建立一个 ...
- Spring学习---Spring中利用组件实现从FTP服务器上传/下载文件
FtpUtil.java import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundExcepti ...
- HCNA管理设置文件系统FTP服务上传下载文件
1.拓扑图 2.R2配置 The device is running! ###################################### <Huawei>sys Enter s ...
- FTP进行上传下载文件
1.需要引入外部jar包:commons-net-2.0.jar(或者是子包commons-net-ftp-2.0.jar) 2.需下载ftp服务器 3. 本地电脑访问ftp服务器格式:ftp://用 ...
随机推荐
- net::ERR_CONNCTION_ABORTED与http post request header is too large 错误
开始浏览器报(net::ERR_CONNCTION_ABORTED)然后就一直找这个错误是怎么引起的,找了一圈也没有找到答案. 后来看了一下后台发出后台错http post request heade ...
- Dagger2在Android开发中的应用
世界是普遍联系的,任何事物和个体都直接或间接相互依赖,在时空长河中共同发展.在面向对象的世界中,更是如此,类与类之间的依赖,关联关系,模块(亦或是分层架构中的层)之间的耦合关系,都是我们在软件开发实践 ...
- mysql中的limit
mysql中常使用limit做分页查询,使用方法也很简单: SELECT * FROM table LIMIT [offset,] rows #注: offset-偏移量,rows查询返回的行数 -- ...
- hibernate总结-持续更新
简介 hibernate官网:Hibernate Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非常轻量级的对象封装,使得 Java 程序员可以随心所欲的使用对象编程思 ...
- 《JavaScript高级程序设计》 -- 变量、作用域和内存问题(二)
1.基本类型与引用类型 基本类型:值保存在变量中 (Number.String.Boolean.Undefined.Null).在内存中占据固定大小空间,被保存在栈内存中 引用类型:值是保存在内存中的 ...
- socket 异步通信的一些问题
socket通信在使用时被封装很简单,像操作文件一样简单,正是因为简单里面好多细节需要深入研究一下. windows下通信有select和iocp方式,select是传统方式,在socket里使用re ...
- SpringMVC原理及非注解配置详解
1. Spring介绍 Spring MVC是Spring提供的一个强大而灵活的web框架.借助于注解,Spring MVC提供了几乎是POJO的开发模式,使得控制器的开发和测试更加简单. 这些控制器 ...
- [luogu P3787][新创无际夏日公开赛] 冰精冻西瓜 [树状数组][dfs序]
题目背景 盛夏,冰之妖精琪露诺发现了一大片西瓜地,终于可以吃到美味的冻西瓜啦. 题目描述 琪露诺是拥有操纵冷气程度的能力的妖精,一天她发现了一片西瓜地.这里有n个西瓜,由n-1条西瓜蔓连接,形成一个有 ...
- a.变量及基本数据结构
1. Scala 中有两种类型的变量:可变变量和不可变变量 ,可变变量使用关键字var定义,不可变变量用val定义 : 2.Scala 中变量定义的时候必须初始化赋值,可以使用占位符(_)来初始化,基 ...
- .Net Core 系列:2、ADO.Net 基础
目录: 1.环境搭建 2.ADO.Net 基础 3.ASP.Net Core 基础 4.MD5.Sha256.AES 加密 5.实现登录注册功能 6.实现目录管理功能 7.实现文章发布.编辑.阅览和删 ...