Centos下ftp客户端lftp的使用

安装

1
yum install lftp

使用语法

1
2
3
4
5
6
7
8
9
10
11
lftp -[fceup] user:passwd@host #passwd可选,此方式密码明文保存,history可查看

-f <file> #执行文件中的命令后退出

-c <cmd> #执行命令后退出

-e <cmd> #登录后后执行命令

-u <user>[,<pass>] #使用指定的用户名/口令进行验证

-p <port> #连接指定的端口,默认21

常用命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
cd
#切换FTP目录

lcd #切换本地目录

ls
#列出FTP目录文件

!ls
#列出本地目录文件

find
./ -name file
#查找文件

mv
#移动

rm
#删除

mkdir
#新建目录

rmdir
#删除目录

上传下载文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
get [cEaO] file
-o newfilename #下载文件

put [cEaO] file
-o newfilename #上传文件

pget -n #多线程下载

可选参数:

-c #支持断点续传

-E #下载后删除远端文件

-a #指定传输为ascii模式, 默认为二进制模式

-O #指定存放目录

上传下载目录

1
2
3
4
5
6
7
8
9
10
11
12

mirror [cRnr] remote [local]

可选参数:

-c #支持断点续传

-R #上传整个目录

-n #只下载较新的档案,可用于增量备份

-r #只下载当前目录,不递归目录

主动/被动模式

1
2
3
4
5
6
#默认为被动模式

set
ftp:passive-mode no #关闭被动模式转为主动模式

#主动客户端开启数据传输端口,被动服务端开启数据传输端口。

妙用lftp多线程下载

1
lftp -c "pget -n 10 http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.18.tar.gz"

使用例子

1
2
lftp -u username,password -p 21 -e "mirror --only-newer --delete lydj /data/file/;quit;" ftpadmin@ip
从文件服务器lydj目录中递归下载文件到本地/data/file目录中,并且只下载最新的,对于服务器不存在的问题在本地也删除。

参考资料

分享到