1 | lftp
|
2 | ===
|
3 |
|
4 | 优秀的文件客户端程序
|
5 |
|
6 | ## 补充说明
|
7 |
|
8 | **lftp命令** 是一款优秀的文件客户端程序,它支持ftp、SETP、HTTP和FTPs等多种文件传输协议。lftp支持tab自动补全,记不得命令双击tab键,就可以看到可能的选项了。
|
9 |
|
10 | ### 语法
|
11 |
|
12 | ```shell
|
13 | lftp(选项)(参数)
|
14 | ```
|
15 |
|
16 | ### 选项
|
17 |
|
18 | ```shell
|
19 | -f:指定lftp指令要执行的脚本文件;
|
20 | -c:执行指定的命令后退出;
|
21 | --help:显示帮助信息;
|
22 | --version:显示指令的版本号。
|
23 | ```
|
24 |
|
25 | ### 参数
|
26 |
|
27 | 站点:要访问的站点的ip地址或者域名。
|
28 |
|
29 | ### 实例
|
30 |
|
31 | **登录ftp**
|
32 |
|
33 | ```shell
|
34 | lftp 用户名:密码@ftp地址:传送端口(默认21)
|
35 | ```
|
36 |
|
37 | 也可以先不带用户名登录,然后在接口界面下用login命令来用指定账号登录,密码不显示。
|
38 |
|
39 | **查看文件与改变目录**
|
40 |
|
41 | ```shell
|
42 | ls
|
43 | cd 对应ftp目录
|
44 | ```
|
45 |
|
46 | **下载**
|
47 |
|
48 | get当然是可以的,还可以:
|
49 |
|
50 | ```shell
|
51 | mget -c *.pdf #把所有的pdf文件以允许断点续传的方式下载。
|
52 | mirror aaa/ #将aaa目录整个的下载下来,子目录也会自动复制。
|
53 | pget -c -n 10 file.dat #以最多10个线程以允许断点续传的方式下载file.dat,可以通过设置pget:default-n的值而使用默认值。
|
54 | ```
|
55 |
|
56 | **上传**
|
57 |
|
58 | 同样的put、mput都是对文件的操作,和下载类似。
|
59 |
|
60 | ```shell
|
61 | mirror -R 本地目录名
|
62 | ```
|
63 |
|
64 | 将本地目录以迭代(包括子目录)的方式反向上传到ftp site。
|
65 |
|
66 | **模式设置**
|
67 |
|
68 | ```shell
|
69 | set ftp:charset gbk
|
70 | ```
|
71 |
|
72 | 远程ftp site用gbk编码,对应的要设置为utf8,只要替换gbk为utf8即可。
|
73 |
|
74 | ```shell
|
75 | set file:charset utf8
|
76 | ```
|
77 |
|
78 | 本地的charset设定为utf8,如果你是gbk,相应改掉。
|
79 |
|
80 | ```shell
|
81 | set ftp:passive-mode 1
|
82 | ```
|
83 |
|
84 | 使用被动模式登录,有些site要求必须用被动模式或者主动模式才可以登录,这个开关就是设置这个的。0代表不用被动模式。
|
85 |
|
86 | **书签**
|
87 |
|
88 | 其实命令行也可以有书签,在lftp终端提示符下:
|
89 |
|
90 | ```shell
|
91 | bookmark add ustc
|
92 | ```
|
93 |
|
94 | 就可以把当前正在浏览的ftp site用ustc作为标签储存起来。以后在shell终端下,直接`lftp ustc`就可以自动填好用户名和密码,进入对应的目录了。
|
95 |
|
96 | ```shell
|
97 | bookmark edit
|
98 | ```
|
99 |
|
100 | 会调用编辑器手动修改书签。当然,也可以看到,这个书签其实就是个简单的文本文件。密码,用户名都可以看到。
|
101 |
|
102 | **配置文件**
|
103 |
|
104 | ```shell
|
105 | vim /etc/lftp.conf
|
106 | ```
|
107 |
|
108 | 一般,我会添加这几行:
|
109 |
|
110 | ```shell
|
111 | set ftp:charset gbk
|
112 | set file:charset utf8
|
113 | set pget:default-n 5
|
114 | ```
|
115 |
|
116 | 这样,就不用每次进入都要打命令了。其他的set可以自己tab然后help来看。
|
117 |
|
118 |
|