Linux多线程定时下载

多线程下载

axel

axel -n <线程数> -o <输出路径> <链接>

axel会生成两个文件,一是下载文件;另一是下载文件.st,为axel的下载状态文件。
axel支持断点续传,在文件下载路径下,axel会检查已有的下载文件与下载状态文件(下载文件.st),接上次下载进度继续下载。

aria2

刚发现这个包,支持多线程也支持种子下载。
多线程下载:

aria2c -s 2 -x 2 https://download.freenas.org/11.2/STABLE/U7/x64/FreeNAS-11.2-U7.iso

种子下载:

aria2c -S xxx.torrent

此处参考了这个博文:

https://www.cnblogs.com/languang9801/p/10940779.html

定时下载 – crontab

实现步骤

1. 创建bash执行文件,编写脚本

vi axel.sh

axel.sh中输入需要定时执行的代码。
本人在下载FreeNAS时遇到网络不稳定问题因此想着定时执行axel命令,示例如下。

axel -n 8 -o /home/yhzheng/download/Freenas/ https://download.freenas.org/11.2/STABLE/U7/x64/FreeNAS-11.2-U7.iso

此处记得指定下载路径,因为crontab执行axel.sh脚本时的“当前路径”并不是axel.sh所在的目录,为避免找不到下载文件,最好指定存储文件的绝对路径。

2. 赋予执行文件执行权限

检查axel.sh是否有执行权限,可以用chmod为该文件添加权限。

chmod a+x axel.sh

或者直接把文件权限改为777:

chmod 777 axel.sh

3. 编辑crontab执行脚本

crontab -e

进入crontab执行文件编辑界面。
注意:默认文件编辑器不是vi,而是Emacs。
直接输入执行指令

*/2 * * * * /home/yhzheng/download/Freenas/axel.sh > /home/yhzheng/download/Freenas/load.log 2>&1

该命令使得每2分钟执行一次axel.sh脚本,并把执行情况(包括成功与失败的执行记录)存储在load.log 日志文件中。

crontab执行指令的语法大致如下:
共6个参数,前5个参数记录时间,最后一个参数记录待执行的指令,具体意义如下:

minhourdaymonthweekcommand

更详细的使用方法可以参考这个博文:

https://www.cnblogs.com/wenzheshen/p/8432588.html

论如何退出Emacs编辑器?

Ctrl+x退出编辑,编辑器会提示是否保存修改内容,键入y,然后Enter确认保存的文件路径就可以了。
需要其他功能就类比着按着编辑器的提示来吧,我也不懂了。。。现学现卖的。。。

参考文章:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值