lftp是linux下ftp的利器,非常好用,但是linux下有时候不想win下可以用鼠标点击点击就能搞定的,所以命令不可少。

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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
登录ftp服务器 
lftp ftp://user:password@site:port 
lftp user:password@site:port 
lftp site -p port -u user,password 
lftp site:port -u user,password 
===========================================
远程目录操作 
ls 
显示远端文件列表(!ls 显示本地文件列表)。 
有一点要说明,第一次ls之后,目录表就被保存到了本地cache,这样再次ls就不能得到这个目录下最新的列表,这时可以用rels重新下载目录表。这里的cache是lftp的默认设置,目的无非就是更快的得到列表,有时却不符和你的使用习惯。可以用 cache on和cache off开关cache,也可以用cache flush来清空cache。lftp也支持tab匹配功能,大大减少了劳动强度。 
cd 
切换远端目录(lcd 切换本地目录)。 
mkdir 
建立远端目录。 
rmdir 
删除远端目录。 
pwd 
显示目前远端所在目录(lpwd 显示本地目录)。 
du 
计算远端目录的大小 
mv 
移动远端文件(远端文件改名)。 
rm 
删除远端文件。 
参数-r,递归删除文件夹 
mrm 
删除多个远端文件(支持通配符)。
===========================================
本地目录操作 
! 
执行本地 shell的命令(由于lftp 没有 lls, 故可用 !ls 来替代) 
lcd 
切换本地目录 
lpwd 
显示本地目录 
===========================================
上传下载 
get OPTS -o 
抓取远端档案 
get rfile -o lfile 
抓 rfile 到本地改名为 lfile 
-c 为续传 
-E 抓档完成後, 将远端的档案砍了 
-a 为 ascii mode, 预设为 binary mode 
-O 设定 base directory 为本地端放档案的目录
mget OPTS 
下载远端档案(可用 wildcard expansion 也就是 *) 
pget OPTS -o 
使用多个连结来下载档案, 预设为五个。 
-n 3 为叁个连结
mirror OPTS remote [local] 
下载整个目录(楼上的 get 只能用来抓档案) 
-c 续传 
-e 这个要小心一些, 比较远端和本地端的档案, 假如远端没有的, 就将本地端的档案删除, 也就是将本地端和远端资料同步。 
-R 上传整个目录 
-n 只下载较新的档案 
-r 不用递迴到目录中 
--parallel=n 同时下载 n 个档案(预设一次只下载一个)
put 
上传文件。 
mput 
上传多个文件(支持通配符)。
=============================================
关于书签(bookmark) 
bookmark设定书签。 
ftp中的bookmark命令,是将配置写到~/.lftp/bookmarks文件中;我们可以直接修改此文件,快速登陆ftp服务器。 
borkmark文件格式为:borkmarkname    ftp-url如下 
别名< 空格>ftp://user:passwd@site:port 
再次使用则直接录入:lftp 别名即可 
bookmark add name 用来新增名称为 name 的书籤 
bookmark del name 删除名称为 name 的书籤 
bookmark list 显示目前有设定那些书籤(另外直接打 bookmark 和 bookmark list 的结果一样) 
bookmark edit 呼叫编辑器修改书籤 (~/.lftp/bookmarks)(windows不支持) 
=============================================
关于字符编码、配置文件等问题 
lftp部分配置文件存放在~/.lftprc或者~/.lftp/rc【windows版本没有此文件】 
并在其中加入以下内容: 
debug 3        # 可以看到出错信息:) 
set ftp:charset GBK 
set file:charset UTF-8 
#set ftp:passtive-mode no 
#alias utf8 " set ftp:charset UTF-8" 
#alias gbk " set ftp:charset GBK"
另外:lftp 内建了 shell-like 的命令格式, 允许在背景同时执行多个命令(&)。所有背景执行的工作都是在同一个程序中(process), 能将前景执行的命令放到背景执行(Ctrl-z), 或从背景拿回前景执行(wait 或 fg), 甚至还可以经由上个命令的传回值来决定目前这个命令是否要执行(&& ||)。在结束 lftp 时, 如果还有程序执行中, lftp 会将自己切换到 no hup 模式並放到背景执行。因此不必担心执行 lftp 当中无法登出。以上主要用于linux。
===============================================