下载 qshell

下载地址:https://github.com/qiniu/qshell
解压到目录并重新命名为 qshell.exe ,然后在该目录下执行操作,也可以配置环境变量即可全局使用

当前使用版本:v2.4.1

添加七牛云账号

qshell account <Your AccessKey> <Your SecretKey> <Your Name>

获取 Bucket 下的所有文件信息

# -o files.txt 将所有文件信息保存到 files.txt
qshell listbucket <Bucket> -o files.txt

files.txt 格式如下

a.png   15716	FvCmbGBanK7_p__5DcbTGWVcAzZ5	15891820034656194	image/png	0
b.png	25716	FvCmbGBanK7_p__5DcbTGWVcAzZ6	15891820034656195	image/png	0
c.png	35716	FvCmbGBanK7_p__5DcbTGWVcAzZ7	15891820034656196	image/png	0

处理 files.txt

在移动的时我们只需要文件名,所以只需要 files.txt 的第一列

cat files.txt | awk '{print $1}' >copys.txt

开始复制

# --success-list success.txt 将成功的记录保存到 success.txt
# --failure-list failure.txt 将失败的记录保存到 failure.txt
# -i copys.txt 指定要移动的文件名所在的文件
# --force 不提示验证码
qshell batchcopy --success-list success.txt --failure-list failure.txt --force -i copys.txt <Bucket1> <Bucket2>

跨账号

可在空间设置中进行空间授权,授权给另一个账号

参考

github qshell

写的不好,仅供参考