支持Windows上传OneDrive的工具—OneList-OneDriveUploader

功能

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

使用

Github地址 https://github.com/MoeClub/OneList/tree/master/OneDriveUploader

1.安装/下载OneDriveUploader

①Linux

#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

②Windows

下载这个文件 

OneDriveUploader_Win(64位)

OneDriveUploader_Win(32)

2.授权验证

打开以下链接 【国际版, 个人版(家庭版)】【国内版(世纪互联)

登录授权后会获得到一个以“localhost”开头并且打不开的网站地址,复制整条链接

3.初始化文件配置

①Linux

#国际版,将url换成你上面复制的授权地址,包括http://loaclhost。
OneDriveUploader -a "url"

#个人版(家庭版),将url换成你上面复制的授权地址,包括http://loaclhost。
OneDriveUploader -ms -a "url"

#中国版(世纪互联),将url换成你上面复制的授权地址,包括http://loaclhost。
OneDriveUploader -cn -a "url"

②Windows

在文件下载的目录 按Shift+右键-在此处打开命令指示符

#国际版,将url换成你上面复制的授权地址,包括http://loaclhost。
OneDriveUploader.exe -a "url"

#个人版(家庭版),将url换成你上面复制的授权地址,包括http://loaclhost。
OneDriveUploader.exe -ms -a "url"

#中国版(世纪互联),将url换成你上面复制的授权地址,包括http://loaclhost。
OneDriveUploader.exe -cn -a "url"

如果提示Init config file: /YourDownload/auth.jso类似信息,则初始化成功。

通常初始化 会吧auth.json生成在你当前目录

注:此操作将会自动初始化的配置文件,每次产生的 url 只能用一次, 重试请重新获取 url。

4.命令及使用

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")
  -f
        // 开关(推荐)
        // 加上 -f 参数,强制读取 auth.json 中的块大小配置和多线程配置.
        // 不加 -f 参数, 每次覆盖保存当前使用参数到 auth.json 配置文件中.
        Force Read config form config file. [BlockSize, ThreadNum]
  -skip
        // 开关
        // 跳过上传网盘中已存在的同名文件. (默认不跳过)
        Skip exist file on remote.
  -cn
        // 开关
        // 授权中国版(世纪互联), 需要此参数.
        OneDrive by 21Vianet.
  -ms
        // 开关
        // 授权个人版(家庭版), 需要此参数.
        OneDrive by Microsoft.

5.使用示例

①Linux

#将当前目录下的51shenyun01.mp4文件上传到OneDrive网盘根目录
OneDriveUploader -c /YourDownload/auth.json -s "51shenyun01.mp4"

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

#将当前目录下的51shenyun01.mp4文件上传到OneDrive网盘根目录,并改名为51shenyun02.mp4
OneDriveUploader -c /YourDownload/auth.json -s "51shenyun01.mp4" -n "51shenyun02.mp4"

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

#将当前目录下的Download文件夹上传到OneDrive网盘Test目录中,并跳过已存在文件。
OneDriveUploader -c /YourDownload/auth.json -s "Download" -r "Test" -skip

#将同目录下的Download文件夹上传到OneDrive网盘Test目录中,使用8线程,并设置分块大小为15M
OneDriveUploader -c /YourDownload/auth.json -t 8 -b 15 -s "Download" -r "Test" 

②Windows

#将当前目录下的51shenyun01.mp4文件上传到OneDrive网盘根目录
OneDriveUploader.exe -c auth.json -s "51shenyun01.mp4"

#将当前目录下的51shenyun01.mp4文件上传到OneDrive网盘Test目录中
OneDriveUploader.exe -c auth.json -s "51shenyun01.mp4" -r "Test"

#将当前目录下的51shenyun01.mp4文件上传到OneDrive网盘根目录,并改名为51shenyun02.mp4
OneDriveUploader.exe -c auth.json -s "51shenyun01.mp4" -n "51shenyun02.mp4"

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

#将当前目录下的Download文件夹上传到OneDrive网盘Test目录中,并跳过同名文件。
OneDriveUploader.exe -c auth.json -s "Download" -r "Test" -skip

#将同目录下的Download文件夹上传到OneDrive网盘Test目录中,使用8线程,并设置分块大小为15M
OneDriveUploader.exe -c auth.json -t 8 -b 15 -s "Download" -r "Test" 

注:请自行修改auth.json文件的目录