配置
基于 Docker 快速搭建 Aria2 Pro 的基础上,修改上传脚本
用到的项目:cloudpan189-go
下载对应平台的 cloudpan189-go ,把解压后的可执行文件改名为 cloud189
使用 docker 安装完 Aria2-Pro-后端后,将 cloud189
可执行文件拷贝进容器
1
| docker cp cloud189 aria2-pro:/usr/local/bin
|
配置 cloudpan189-go 账号
1
| docker exec -it aria2-pro cloud189 login
|
依次输入账号密码,等待登录成功
脚本
对应的 upload.sh
脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
| #!/usr/bin/env bash
CHECK_CORE_FILE() { CORE_FILE="$(dirname $0)/core" if [[ -f "${CORE_FILE}" ]]; then . "${CORE_FILE}" else echo && echo "!!! core file does not exist !!!" exit 1 fi }
CHECK_CLOUD189() { [[ $# -eq 0 ]] && { echo && echo -e "Checking cloud189 connection ..." cloud189 who if [[ $? -eq 0 ]]; then echo -e "${LIGHT_GREEN_FONT_PREFIX}success${FONT_COLOR_SUFFIX}" else echo echo -e "${RED_FONT_PREFIX}failure${FONT_COLOR_SUFFIX}" fi } }
TASK_INFO() { echo -e " -------------------------- [${YELLOW_FONT_PREFIX}Task Infomation${FONT_COLOR_SUFFIX}] -------------------------- ${LIGHT_PURPLE_FONT_PREFIX}Task GID:${FONT_COLOR_SUFFIX} ${TASK_GID} ${LIGHT_PURPLE_FONT_PREFIX}Number of Files:${FONT_COLOR_SUFFIX} ${FILE_NUM} ${LIGHT_PURPLE_FONT_PREFIX}First File Path:${FONT_COLOR_SUFFIX} ${FILE_PATH} ${LIGHT_PURPLE_FONT_PREFIX}Task File Name:${FONT_COLOR_SUFFIX} ${TASK_FILE_NAME} ${LIGHT_PURPLE_FONT_PREFIX}Task Path:${FONT_COLOR_SUFFIX} ${TASK_PATH} ${LIGHT_PURPLE_FONT_PREFIX}Aria2 Download Directory:${FONT_COLOR_SUFFIX} ${ARIA2_DOWNLOAD_DIR} ${LIGHT_PURPLE_FONT_PREFIX}Custom Download Directory:${FONT_COLOR_SUFFIX} ${DOWNLOAD_DIR} ${LIGHT_PURPLE_FONT_PREFIX}Local Path:${FONT_COLOR_SUFFIX} ${LOCAL_PATH} ${LIGHT_PURPLE_FONT_PREFIX}Remote Path:${FONT_COLOR_SUFFIX} ${REMOTE_PATH} ${LIGHT_PURPLE_FONT_PREFIX}.aria2 File Path:${FONT_COLOR_SUFFIX} ${DOT_ARIA2_FILE} -------------------------- [${YELLOW_FONT_PREFIX}Task Infomation${FONT_COLOR_SUFFIX}] -------------------------- " }
OUTPUT_UPLOAD_LOG() { LOG="${UPLOAD_LOG}" LOG_PATH="${UPLOAD_LOG_PATH}" OUTPUT_LOG }
DEFINITION_PATH() { LOCAL_PATH="${TASK_PATH}" echo $LOCAL_PATH if [[ -f "${TASK_PATH}" ]]; then REMOTE_PATH="${DRIVE_DIR}${DEST_PATH_SUFFIX%/*}" echo else REMOTE_PATH="${DRIVE_DIR}${DEST_PATH_SUFFIX}" fi }
UPLOAD_FILE() { echo -e "$(DATE_TIME) ${INFO} Start upload files..." TASK_INFO RETRY=0 RETRY_NUM=3 while [ ${RETRY} -le ${RETRY_NUM} ]; do [ ${RETRY} != 0 ] && ( echo echo -e "$(DATE_TIME) ${ERROR} Upload failed! Retry ${RETRY}/${RETRY_NUM} ..." echo ) cloud189 upload "${LOCAL_PATH}" "${REMOTE_PATH}" CLOUD189_EXIT_CODE=$? echo $CLOUD189_EXIT_CODE if [ ${CLOUD189_EXIT_CODE} -eq 0 ]; then UPLOAD_LOG="$(DATE_TIME) ${INFO} Upload done: ${LOCAL_PATH} -> ${REMOTE_PATH}" rm -rf ${LOCAL_PATH} OUTPUT_UPLOAD_LOG DELETE_EMPTY_DIR break else RETRY=$((${RETRY} + 1)) [ ${RETRY} -gt ${RETRY_NUM} ] && ( echo UPLOAD_LOG="$(DATE_TIME) ${ERROR} Upload failed: ${LOCAL_PATH}" OUTPUT_UPLOAD_LOG ) sleep 3 fi done }
CHECK_CORE_FILE "$@" CHECK_SCRIPT_CONF CHECK_CLOUD189 CHECK_FILE_NUM GET_TASK_INFO GET_DOWNLOAD_DIR CONVERSION_PATH DEFINITION_PATH CLEAN_UP UPLOAD_FILE exit 0
|
使用方法
上传目录的修改在 aria2-config/script.conf
文件内,默认是上传到天翼云盘的根目录下
修改 aria2-config/script/
目录下的 upload.sh
文件,直接将脚本内容变为上述脚本内容即可。