lftp 常用操作

lftp 常用操作

最近有个需求,需要向对方服务器传输资料,方案讨论完之后决定采用lftp,
网上查阅一番资料,以及在领导言传身教之下,受益匪浅,特此记录一下

1.登录lftp
1
lftp -u 用户名,密码 sftp://IP地址 :端口号
2.乱码问题解决
1
2
set ftp:charset gbk(或者 gb2312 或 utf-8) ##设置ftp端的编码格式
set file:charset utf-8 (...同上) ##设置本地编码格式
3.查找ftp端文件
1
2
3
4
5
6
7
ls *.txt ##查找当前目录下的所有txt文件
ls ./123/ ##列出123目录下所有文件
find . -name "*.txt" ##递归查找站点上所有的txt文件
find ./xx -name "*.txt" ##查找xx目录下所有的txt文件

附1: ls第二次读取的是本地缓存,可以用 rels 代替 ls 或者catch off / catch on 来开关catch,catch flush清空本地catch
附2: 浏览本地目录的命令可用!ls, 如 !ls /usr/local/bin/
4.下载文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
下载文件之前要先设置好本地的目录,用来存放下载的文件
lcd /home/123/web ##设置本地存放目录 默认为 /home/usr

get 123.txt ##下载123.txt文件到 /home/123/web 中
get -c 123.txt ##断点续传下载
mget *.txt ##批量下载所有txt文件
mget -c *.txt ##断点续传
mget -c ./123/aaa/*.txt ##断点续传、批量下载ftp端aaa目录下的所有txt文件

pget -c -n 10 file.dat
##以最多10个线程以允许断点续传的方式下载file.dat
##可以通过设置 set pget:default-n 5 的值而使用默认值。

mirror aaa/
##将aaa目录整个的下载下来,子目录也会自动复制 本地自动建立目录
5.上传文件
1
2
3
4
put 123.txt     ##同下载
mput *.txt ##同下载

mirror -R aaa/ ##同下载
6.多任务处理
1
2
3
4
ctrl+z ##将当前进行的任务移交后台处理
wait ##将后台处理任务调至前台查看
jobs ##查看后台进行的任务列表
kill all 或者 job_no ##删除所有任务 或 指定的任务

7.lftp -e 在选择后执行命令

1
2
lftp -u 用户名,密码  sftp://IP地址 :端口号 -e "ls | wc -l;quit”
lftp -u 用户名,密码 sftp://IP地址 :端口号 -e “mput ;quit“ 传输可以加nohup(不挂断运行)
-------------本文结束感谢您的阅读-------------
坚持原创技术分享,您的支持将鼓励我继续创作!