OneDriveUploader

一个Golang写的Onedrive网盘上传工具,支持文件和文件夹上传,授权简单,无需依赖,单文件。

特征

  • 支持 国际版, 个人版(家庭版), 中国版(世纪互联)。
  • 支持上传文件和文件夹到指定目录,并保持上传前的目录结构。
  • 支持命令参数使用, 方便外部程序调用。
  • 支持自定义上传分块大小。
  • 支持多线程上传(多文件同时上传)。
  • 支持根据文件大小动态调整重试次数。

授权

点击下边URL登录并授权
国际版, 个人版(家庭版):传送
中国版(世纪互联):传送

安装

#64位系统下载
wget https://raw.githubusercontent.com/MoeClub/OneList/master/OneDriveUploader/amd64/linux/OneDriveUploader -P /usr/local/bin/
#32位系统下载
wget https://raw.githubusercontent.com/MoeClub/OneList/master/OneDriveUploader/i386/linux/OneDriveUploader -P /usr/local/bin/
#arm架构下载
wget https://raw.githubusercontent.com/MoeClub/OneList/master/OneDriveUploader/arm/linux/OneDriveUploader -P /usr/local/bin/

#给予权限
chmod +x /usr/local/bin/OneDriveUploader

配置

# 国际版
OneDriveUploader -a "url"
# 个人版(家庭版)
OneDriveUploader -ms -a "url"
# 中国版(世纪互联)
OneDriveUploader -cn -a "url"

在浏览器地址栏中获取以 http://loaclhost 开头的整个url内容
将获取的完整url内容替换命令中的 url 三个字母
此操作将会自动初始化的配置文件,只需要操作一次

提示 Init config file: '/path/to/auth.json 则成功

命令

Usage of OneDriveUploader:
  -a string
      // 初始化授权
        Setup and Init auth.json.
  -b string
      // 自定义上传分块大小, 可以提高网络吞吐量, 受限于磁盘性能和网络速度.
      Set block size. [Unit: M; 5<=b<=60;] (default "10")
  -c string
      // 配置文件路径
      Config file. (default "auth.json")
  -n string
      // 上传单个文件时,在网盘中重命名
      Rename file on upload to remote.
  -r string
      // 上传到网盘中的某个目录, 默认: 根目录
      Upload to reomte path.
  -s string
      // 要上传的文件或文件夹
      Upload item.
  -t string
      // 线程数, 同时上传文件的个数. 默认: 2
      Set thread num. (default "2")

使用

#将当前目录下的mm00.jpg文件上传到OneDrive网盘根目录
OneDriveUploader -c /root/auth.json -s "mm00.jpg"

#将当前目录下的mm00.jpg文件上传到OneDrive网盘根目录,并改名为mm01.jpg
OneDriveUploader -c /root/auth.json -s "mm00.jpg" -n "mm01.jpg"

#将当前目录下的Download文件夹上传到OneDrive网盘根目录
OneDriveUploader -c /root/auth.json -s "Download" 

#将当前目录下的Download文件夹上传到OneDrive网盘Test目录中
OneDriveUploader -c /root/auth.json -s "Download" -r "Test"

#将同目录下的Download文件夹上传到OneDriv网盘Test目录中,使用10线程
OneDriveUploader -c /root/auth.json -t 10 -s "Download" -r "Test"

#将同目录下的Download文件夹上传到OneDrive网盘Test目录中,使用15线程,并设置分块大小为20M
OneDriveUploader -c /root/auth.json -t 15 -b 20 -s "Download" -r "Test"
#如需后台运行可以借助nohup命令
nohup OneDriveUploader -c /root/auth.json -t 15 -b 20 -s "Download" -r "Test" > onedrive.log 2>&1 &

/path/to/file/auth.json为初始化时,生成的auth.json绝对路径地址,本文默认/root/auth.json,自行调整。

注意
多次尝试后, 无失败的上传文件. 退出码为 0.
最终还有失败的上传文件会详细列出上传失败项. 退出码为 1.

Windows使用

这里就随便补充下Windows使用,先下载程序文件,下载地址→传送门
比如我将exe文件放到D盘,然后使用Win+R,输入CMD运行,调出窗口后,使用命令:

#进入D盘
cd /d D:\
#国际版初始化,将url换成你上面复制的授权地址,包括http://loaclhost。
OneDriveUploader.exe -a "url"
#个人版(家庭版)初始化,将url换成你上面复制的授权地址,包括http://loaclhost。
OneDriveUploader.exe -ms -a "url"
#中国版(世纪互联)初始化,将url换成你上面复制的授权地址,包括http://loaclhost。
OneDriveUploader.exe -cn -a "url"

然后上传命令和上面一样,只需要把OneDriveUploader改成OneDriveUploader.exe即可。

Last modification:February 21st, 2020 at 11:09 am
If you think my article is useful to you, please feel free to appreciate