Aria2离线下载后自动将文件上传到GoogleDrive

之前介绍过Aria2安装和GoogleDrive挂载:

今天来说怎么把下载后的资源自动上传到GoogleDrive,毕竟VPS的空间是宝贵且有限的。

为什么

既然都挂载了,为什么不直接把Aria2下载目录设置成挂载目录
如果直接把下载目录指定到挂载目录,你会发现出现各种莫名其妙的错误,比如:文件无法写入、Aria2下载没速度、Aria2卡死、保存到GooglrDrive的文件不完整等等。

既然不能边下边上传那我们就先下载完再传吧。
利用Aria2的一个参数on-download-complete,这个参数的作用是当Aria2每下载完成一个任务后可以自动执行一次指定路径的脚本文件。

新建

新建一个脚本:

vi /root/autoupload.sh

写入:

#!/bin/bash
path=$3
downloadpath='/disk/download'
if [ $2 -eq 0 ]
        then
                exit 0
fi
while true; do
filepath=$path
path=${path%/*}; 
if [ "$path" = "$downloadpath" ] && [ $2 -eq 1 ]
    then
    rclone move "$filepath" /disk/google/      
    exit 0
elif [ "$path" = "$downloadpath" ]
    then
    rclone move "$filepath"/ /disk/google/"${filepath##*/}"/
    exit 0
fi
done

*注:/disk/download改成你Aria2的下载目录,/disk/google/改成你网盘的挂载目录,后面带/

给脚本执行权限:

chmod +x autoupload.sh

编辑Aria2配置文件aria2.conf,在最后加上这段代码:

on-download-complete=/root/autoupload.sh

最后重启一下Aria2

/etc/init.d/aria2 restart

现在去下载个文件试试会不会自动执行上传吧!

最后修改:2018 年 08 月 27 日 09 : 43 PM

发表评论