Dropbox Uploader是一款专为Dropbox开发的BASH脚本,可以实现上传、下载、删除、列出文件清单、在线分享、同步和备份等功能。
它使用BASH脚本语言写成,只需要cURL即可使用。
项目主页 GiHub project page.
为什么使用此脚本?
- 绿色轻便:使用BASH脚本语言写成,仅仅需要cURL一个软件(curl是一个数据传输工具,大部分linux发行版均会内置该软件)。
- 安全: 不需要提供帐号密码,该脚本使用官方API进行验证。
更多的扩展信息和使用技巧请参考官方wiki,该wiki同时提供Dropbox Uploader相关的使用实例和脚本。
特性
- 跨平台
- 支持官方Dropbox API v2
- 无需密码
- 简单的配置提示
- 分块文件上传
- 递归文档下载
- 递归文档上传
- Shell通配符扩展 (仅上传)
- 删除/移动/重命名/拷贝/列出/分享文件
- 创建分享连接
- 监视变化
安装配置DropboxUploader
使用git拷贝官方仓库:
git clone https://github.com/andreafabrizi/Dropbox-Uploader.git
或者直接下载脚本:
curl "https://raw.githubusercontent.com/andreafabrizi/Dropbox-Uploader/master/dropbox_uploader.sh" -o dropbox_uploader.sh
给脚本添加执行权限并运行:
$chmod +x dropbox_uploader.sh
$./dropbox_uploader.sh
第一次运行dropbox_uploader
时,会有鉴权提示,按照提示在https://www.dropbox.com/developers/apps新建api app,然后在app管理页找到Generated access token创建access token,将access token粘贴到DropboxUploader提示行按回车键,随后会提示成功接入Dropbox。配置文件保存在~/.dropbox_uploader
。
使用DropboxUploader
DropboxUploader语法非常简单:
./dropbox_uploader.sh [PARAMETERS] COMMAND...
[%%]: 可选参数
<%%>: 必须参数
可使用命令:
-
upload <LOCAL_FILE/DIR …> <REMOTE_FILE/DIR>
上传本地文件或目录到Dropbox。
-
download <REMOTE_FILE/DIR> [LOCAL_FILE/DIR]
从Dropbox下载文件或目录到本地 -
delete <REMOTE_FILE/DIR>
删除Dropbox上的文件或目录 -
move <REMOTE_FILE/DIR> <REMOTE_FILE/DIR>
移动或重命名远端文件或目录 -
copy <REMOTE_FILE/DIR> <REMOTE_FILE/DIR>
拷贝远端文件或目录 -
mkdir <REMOTE_DIR>
在Dropbox创建目录 -
list [REMOTE_DIR]
列出Dropbox目录内容 -
monitor [REMOTE_DIR][TIMEOUT]
监控远端目录变化,如果超时退出,则会反馈第一次变化。
-
share <REMOTE_FILE>
获取远端文件或目录的公开连接 -
saveurl <URL> <REMOTE_DIR>
从URL下载文件到Dropbox
-
search <QUERY>
搜索特定文件
-
info
显示Dropbox帐户相关信息 -
space 示当前帐户容量使用情况
-
unlink
断开Dropbox帐户连接
扩展参数:
- -f <FILENAME>
从特定文件加载配置 - -s
Skip already existing files when download/upload. Default: Overwrite - -d
开启DEBUG模式 - -q
Quiet mode. Don’t show progress meter or messages - -h
显示可读的文件大小格式 - -p
显示cURL过程提示 - -k
不检查SSL证书(不安全)
DropboxUploader使用实例:
./dropbox_uploader.sh upload /etc/passwd /myfiles/passwd.old
./dropbox_uploader.sh upload *.zip /
./dropbox_uploader.sh download /backup.zip
./dropbox_uploader.sh delete /backup.zip
./dropbox_uploader.sh mkdir /myDir/
./dropbox_uploader.sh upload "My File.txt" "My File 2.txt"
./dropbox_uploader.sh share "My File.txt"
./dropbox_uploader.sh list
已通过测试环境
- GNU Linux
- FreeBSD 8.3/10.0
- MacOSX
- Windows/Cygwin
- Raspberry Pi
- QNAP
- iOS
- OpenWRT
- Chrome OS
- OpenBSD
设置代理
如果需要使用代理服务器,只需对https_proxy变量进行设置即可:
Linux:
export HTTP_PROXY_USER=XXXX
export HTTP_PROXY_PASSWORD=YYYY
export https_proxy=http://192.168.0.1:8080
BSD:
setenv HTTP_PROXY_USER XXXX
setenv HTTP_PROXY_PASSWORD YYYY
setenv https_proxy http://192.168.0.1:8080
BASH和Curl安装
Debian & Ubuntu Linux:
sudo apt-get install bash (Probably BASH is already installed on your system)
sudo apt-get install curl
BSD:
cd /usr/ports/shells/bash && make install clean
cd /usr/ports/ftp/curl && make install clean
Cygwin:
需要安装以下文件:
- curl
- ca-certificates
- dos2unix
运行脚本前,你需要使用dos2unix
对脚本进行转换。
从源码安装cURL:
- 从这里下载源码 http://curl.haxx.se/download.html
- 参考安装指南进行安装