Chinaunix首页 | 论坛 | 博客
  • 博客访问: 14697
  • 博文数量: 8
  • 博客积分: 330
  • 博客等级: 一等列兵
  • 技术积分: 75
  • 用 户 组: 普通用户
  • 注册时间: 2006-07-10 13:35
文章分类
文章存档

2009年(3)

2008年(5)

我的朋友
最近访客

分类: LINUX

2009-01-15 11:25:02

super down accelerator software for linux:
 
wget -t 递交后台不停重试,等于支持断点续传
 
 
lftp是老牌,“万里长城永不倒”类型的王道unix/linux下的ftp客户端,可是很多新手总是想要找一个所谓

  • 图形界面
  • 中文不乱码
  • 可以多线程

lftp 是一个功能强大的下载工具,它支持访问文件的协议: ftp, ftps, http, https, hftp, fish,sftp,file.(其中ftps和https需要在编译的时候包含openssl库)。llftp的界面非常想一个shell: 有命令补全,历史记录,允许多个后台任务执行等功能,使用起来非常方便。它还有书签、排队、镜像、断点续传、多进程下载等功能。
命令行语法
要看lftp的命令行语法,只要在shell中输入lftp --help

lftp [OPTS]
'lftp'是在 rc 文件执行后 lftp 执行的第一个命令
-f 执行文件中的命令后退出
-c 执行命令后退出
--help 显示帮助信息后退出
--version 显示 lftp 版本后退出
其他的选项同 'open' 命令
-e 在选择后执行命令
-u [,] 使用指定的用户名/口令进行验证
-p 连接指定的端口
主机名, URL 或书签的名字


首先,所有的lftp终端内的命令,都可以用
代码:
help 命令名

的方式来查看帮助信息。
另外,lftp支持tab自动补全,记不得命令是,多打两个tab,就可以看到可能的选项了。

1、登录ftp
代码:
lftp 用户名:密码@ftp地址:传送端口(默认21)

也可以先不带用户名登录,然后在接口界面下用login命令来用指定账号登录,密码不显示。

2、查看文件与改变目录
代码:
ls
cd 对应ftp目录


嘿嘿,很简单吧?其实,在lftp终端中,前面带一个l的命令例如lcd,指的是local,就是在本机的操作,而对应的没有这个l的,都是对ftp site的操作。还有就是要执行本地终端命令,也可以用前面带一个!的方式。这样,配合起来,终端,本地的操作都很放遍。
例如,查看ftp上所有的以mp3为扩展名的文件:
代码:
find . -name "*.mp3"


3、下载
get当然是可以的,还可以
代码:
mget  -c *.pdf

把所有的pdf文件以允许断点续传的方式下载。m代表multi
代码:
mirror aaa/

将aaa目录整个的下载下来,子目录也会自动复制
代码:
pget -c -n 10 file.dat

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

4、上传
同样的put,mput,都是对文件的操作,和下载类似。
代码:
mirror -R 本地目录名

将本地目录以迭代(包括子目录)的方式反向上传到ftp site。

5、模式设置。
代码:
set ftp:charset gbk

远程ftp site用gbk编码,对应的要设置为utf8,只要替换gbk为utf8即可。
代码:
set file:charset utf8

本地的charset设定为utf8,如果你是gbk,相应改掉。

代码:
set ftp:passive-mode 1

使用被动模式登录,有些site要求必须用被动模式或者主动模式才可以登录,这个开关就是设置这个的。0代表不用被动模式。

6、书签
其实命令行也可以有书签,在lftp终端提示符下:
代码:
bookmark add ustc

就可以把当前正在浏览的ftp site用ustc作为标签储存起来。以后在shell终端下,直接
代码:
lftp ustc

就可以自动填好用户名,密码,进入对应的目录了。
代码:
bookmark edit

会调用编辑器手动修改书签。当然,也可以看到,这个书签其实就是个简单的文本文件。密码,用户名都可以看到。

7、配置文件
/etc/lftp.conf
一般,我会添加这几行:
引用:
set ftp:charset gbk
set file:charset utf8
set pget:default-n 5

这样,就不用每次进入都要打命令了。其他的set 可以自己tab然后help 来看。

* 后台任务管理
缺省情况下,按 Ctrl+z,正在执行的任务将转为后台执行,也可以在命令行末尾加&符号使任务在后台执行。用jobs命令可以查看所有的后台进程。用queue命令可以排队新的任务。如果退出lftp是还有任务在后台执行,lftp将转为后台执行。

* 其它用法
lftp支持类似bash的管道操作,例如用下面的命令可以将ftp服务器上的特定目录下(也可以是整个站点)所有文件的大小存到本地的文件ls.txt中
lftp ................:/> du incoming > ls.txt

相关文件
/etc/lftp.conf
全局配置文件,实际位置依赖系统配置文件目录,可能在/etc,也可能在/usr/local/etc
~/.lftp/rc, ~/.lftprc
用户配置文件,将在/etc/lftp.conf之后执行,所以这里面的设置会覆盖/etc/lftp.conf中的设置。
lftp 缺省不会显示 ftp 服务器的欢迎信息和错误信息,这在很多时候不方便,因为你有可能想知道这个服务器到底是因为没开机连不上,还是连接数已满。如果是这样,你可以在 ~/.lftprc 里写入一行

debug 3
就可以看到出错信息了。
更多的配置选项请查man手册或在lftp界面内用命令 set -a 获得。
~/.lftp/log
当lftp转为后台非挂起模式执行时,输出将重定向到这里
~/.lftp/bookmarks
这是lftp存储书签的地方,可以lftp查看bookmark命令
~/.lftp/cwd_history
这个文件用来存储访问过的站点的工作目录
阅读(438) | 评论(0) | 转发(0) |
0

上一篇:Perl 处理Unicode问题

下一篇:激励自己

给主人留下些什么吧!~~