「使用命令行管理存储」UPX 使用指南

一直以来,使用云存储的用户都存在一个的问题,如何把每天新增的文件同步至云存储。

基于这个问题,又拍云开发了云存储文件命令行管理工具 UPX,可以在使用 API/SDK 上传增量文件不适用的情况下,同步本地目录中的增量文件。同时,UPX 也支持文件上传、下载,目录创建,文件、目录删除和异步文件删除等。

下面来看看 UPX 的特性和下载使用。

关于 UPX 的代码仓库,请 点此查看

功能特性

支持流式文件上传、下载
支持增量文件同步
支持大量文件异步删除

UPX 下载

windows 64位 
windows 32位
mac 64位
linux 64位
linux 32位

// Linux 命令方式下载

$ wget -O /usr/local/bin/upx http://collection.b0.upaiyun.com/softwares/upx/upx-linux-amd64-v0.1.3
$ wget -O /usr/local/bin/upx http://collection.b0.upaiyun.com/softwares/upx/upx-linux-i386-v0.1.3
$ chmod +x /usr/local/bin/upx

说明:v0.1.3是 UPX 的版本号,UPX 有更新后,版本号会变更。

UPX 参数详解

UPX 命令格式:
upx [global options] command [command options]
command 含义
login 登录又拍云存储。
pwd 显示当前所处目录
ls 显示当前目录中的文件和目录信息,加 –d 仅显示目录信息
cd 改变工作目录(进入一个目录)
get 下载一个文件或目录
put 上传一个文件或目录
sync 增量文件同步,类似 rsync
mkdir 创建目录
rm 删除文件,支持通配符 *;加 –d 删除目录;加 –a 删除目录和文件;加 –async 异步方式删除文件或目录
info 显示登录的服务名、操作员信息和当前所在目录
logout 退出又拍云存储
global options 含义
-h 显示帮助信息
-v 显示 UPX 版本信息或处理过程信息

 

UPX 使用

Windows 7 系统用户在 开始 输入栏中输入 cmd 打开 DOS 命令行窗口,然后切换到 UPX 程序所在磁盘路径。假设 upx-windows-amd64-v0.1.3.exe 存放在 D:\tmp 目录下 ,那么如下的两行命令可以切换到 UPX 存放目录:

d: /
cd tmp

如图
DOS 使用 UPX 演示图

进入 UPX 程序目录后,通过 upx-windows-amd64-v0.1.3.exe [command]  就可以实现对云存储的管理,[command] 见参数详解。

为了操作方便,可以把 upx-windows-amd64-v0.1.3.exe 重命名为 upx.exe。需要强调的是,在 Windows 系统上直接双击 UPX 程序是无效的,需要通过 DOS 命令行窗口使用。

Mac/Linux 系统的使用跟 Windows 系统类似,只是需要给 UPX 添加可执行权限,命令是

chmod +x 文件路径名称

下面继续以 Windows 系统为例进行 UPX 使用演示。

登录退出

登录您需要操作的云存储服务名。

upx.exe login

如图
Windows  下 UPX 登录

ServiceName 表示服务名,Operator 表示操作员,Password 表示操作员密码。

也可以这样使用:upx.exe login 服务名 操作员名称 操作员密码

说明:如果登录没有报错,则登录成功;如果有报错,则报错信息为登录失败的原因。

退出又拍云存储

upx.exe logout

文件上传

采用流式传输的方式上传文件,节省边缘节点缓存文件的时间开销,提高文件的上传速度,适用于各种大小文件上传的场景。

上传 demo.jpg 图片至云存储当前目录下

upx.exe put demo.jpg

上传 d:/test/demo.jpg 至当前目录中的 abc 目录下面

upx.exe put d:/test/demo.jpg abc/demo.jpg  //如果 abc 文件夹不存在,会自动创建

文件下载

采用流式传输的方式下载文件,节省边缘节点缓存文件的时间开销,提高文件的下载速度,适用于各种大小文件下载的场景。

下载云存储上的图片demo.jpg

upx.exe get demo.jpg 

下载 abc 目录中的 demo.jpg 图片至 d:/test 目录中

upx.exe get abc/demo.jpg d:/test/demo.jpg 

文件同步

可将用户本地某个目录中的所有文件同步上传到又拍云存储中,同时监控目录变化,在下一次同步时,将目录中新增的文件也上传至又拍云存储。

把本地 d:/test 目录下的内容同步至云存储 abc 目录下。

upx.exe sync d:/test abc

说明:

  1. 如果云存储上 abc 目录不存在,会自动创建 abc 目录。
  2. abc 目录可以带上目录路径,从根(/)开始写,如 /xxx/xxx/abc。
  3. sync 不会同步文件的删除操作。 也就是说,如果受监控的目录中有文件被删除,已上传至又拍云存储的文件副本仍旧保留。如果用户确实需要删除该文件,可以单独删除。这一设计的目的是为了防止受监控目录中的文件被误删造成数据丢失。同时还可以收获另一个好处,就是同步上传完一个文件后,本地可以马上删除该文件以释放磁盘空间。

文件删除

支持通配符 * 匹配文件进行批量删除,支持异步删除大量文件。异步删除( –async )请求提交时,程序会把删除请求发给删除队列,同时返回用户删除请求处理成功的信息。然后,删除程序从队列上逐个获取删除请求、执行删除任务,此时,文件或目录才真正的删除。因此,异步删除的删除效果会有一定的时延,好处是删除请求提交没有任何限制,且不需要等待删除过程的时间,适合大量文件且删除时间要求不高的删除场景。

删除文件 demo.jpg

upx.exe rm abc 

删除当前目录下 .jpg 的图片

upx.exe rm *.jpg

删除当前目录下 abc 目录,删除目录时会把目录下的文件也一并删除

upx.exe rm -d abc

异步删除当前目录下 abc 目录中的文件

upx.exe rm --async abc/*

提醒:删除的文件或目录不可找回,请慎重。

其他

修改工作目录为当前目录下的 abc 目录(ps:进入 abc 目录)

upx.exe cd abc 

回到上一层目录

upx.exe cd ..  

列出当前目录下的文件和目录信息

upx.exe ls    

显示当前所处的目录

upx.exe pwd   

显示登录的服务名、操作员和当前目录信息

upx.exe info  

留下一个评论