欢迎光临散文网 会员登陆 & 注册

配置Rclone

2022-05-30 22:05 作者:给冲儿来刀狠de  | 我要投稿

第一步是PC端获取网盘授权的令牌;

第二步是在VPS里绑定获得的授权;

第三步才是自动上传配置。

因为OneDrive的授权需要在浏览器打开,而VPS没有图形界面,只能先在PC端获取授权,所以第一步和第二步有点重复。

因为挂载了其实最终的目的还是转移到自己的云盘空间中,vps 的硬盘能有多大,要折腾都是在云盘中。如果你是土豪当我没说。

这篇手记是解决后续利用 rclone 自动上传 aria2 下载的文件到 onedrive 或者 googledrive。到 aria2 的目录创建脚本:

vi autoupload.sh

脚本如下(作者:P3TERX,Github页面地址):

https://github.com/P3TERX/aria2.conf

#!/bin/bash

#=================================================

# Description: Aria2 download completes calling Rclone upload

# Lisence: MIT

# Version: 1.8

# Author: P3TERX

# Blog: https://p3terx.com

#=================================================

 

downloadpath='/usr/local/caddy/www/file' #Aria2下载目录

name='remote' #配置Rclone时填写的name

folder='/backup' #网盘里的文件夹,留空为整个网盘。

retry_num=3 #上传失败重试次数

 

#=================下面不需要修改===================

filepath=$3 #Aria2传递给脚本的文件路径。BT下载有多个文件时该值为文件夹内第一个文件,如/root/Download/a/b/1.mp4

rdp=${filepath#${downloadpath}/} #路径转换,去掉开头的下载路径。

path=${downloadpath}/${rdp%%/*} #路径转换。下载文件夹时为顶层文件夹路径,普通单文件下载时与文件路径相同。

 

Task_INFO(){

echo

echo -e "[\033[1;32mUPLOAD\033[0m] Task information:"

echo -e "————————– [\033[1;33mINFO\033[0m] ————————–"

echo -e "\033[1;35mDownload path:\033[0m${downloadpath}"

echo -e "\033[1;35mFile path: \033[0m${filepath}"

echo -e "\033[1;35mUpload path: \033[0m${uploadpath}"

echo -e "\033[1;35mRemote path:\033[0m${remotepath}"

echo -e "————————– [\033[1;33mINFO\033[0m] ————————–"

echo

}

 

Upload(){

retry=0

while [ $retry -le $retry_num -a -e "${uploadpath}" ]; do

[ $retry != 0 ] && echo && echo -e "Upload failed! Retry ${retry}/${retry_num} …" && echo

rclone move -v "${uploadpath}" "${remotepath}"

rclone rmdirs -v "${downloadpath}" –leave-root

retry=$(($retry+1))

done

[ -e "${uploadpath}" ] && echo && echo -e "Upload failed: ${uploadpath}" && echo

[ -e "${path}".aria2 ] && rm -vf "${path}".aria2

[ -e "${filepath}".aria2 ] && rm -vf "${filepath}".aria2

}

 

if [ $2 -eq 0 ]

then

exit 0

fi

 

echo && echo -e " \033[1;33mU P L O A D ! ! !\033[0m" && echo

echo && echo -e " \033[1;32mU P L O A D ! ! !\033[0m" && echo

echo && echo -e " \033[1;35mU P L O A D ! ! !\033[0m" && echo

 

if [ "$path" = "$filepath" ] && [ $2 -eq 1 ] #普通单文件下载,移动文件到设定的网盘文件夹。

then

uploadpath=${filepath}

remotepath="${name}:${folder}"

Task_INFO

Upload

exit 0

elif [ "$path" != "$filepath" ] && [ $2 -gt 1 ] #BT下载(文件夹内文件数大于1),移动整个文件夹到设定的网盘文件夹。

then

uploadpath=${path}

remotepath="${name}:${folder}/${rdp%%/*}"

Task_INFO

Upload

exit 0

elif [ "$path" != "$filepath" ] && [ $2 -eq 1 ] #第三方度盘工具下载(子文件夹或多级目录等情况下的单文件下载)、BT下载(文件夹内文件数等于1),移动文件到设定的网盘文件夹下的相同路径文件夹。

then

uploadpath=${filepath}

remotepath="${name}:${folder}/${rdp%/*}"

Task_INFO

Upload

exit 0

fi

Task_INFO

转自 https://loll.cc/aria2

配置Rclone的评论 (共 条)

分享到微博请遵守国家法律