ubuntu下使用aliyunpan

项目地址

一些大文件在远端服务器上下载很快,但取到本地时却很慢,希望有一个软件能快速上传快速下载。而阿里云盘则满足这个功能,上传和下载速度都很快。
远端服务器下载的文件下载完毕之后,通过项目地址可以快速上传到阿里云盘上。然后在本地机器(windows)上安装阿里云盘客户端,同样可以快速下载到本地

下载并解压缩:
wget https://github.com/tickstep/aliyunpan/releases/download/v0.1.3/aliyunpan-v0.1.3-linux-amd64.zip

如何获取refresh_token参考这里这里
1、使用refresh_token登录: 
按照引导步骤登录
aliyunpan login
请输入RefreshToken, 回车键提交 > 626a27b6193f4c5ca6ef0.......
2、列出账号列表: 
aliyunpan loglist
3、获取当前帐号: 
aliyunpan who
4、刷新refresh_token: 
由于阿里云盘的RefreshToken是会过期的,为了延长最大过期时间,需要定期刷新Token,建议每小时刷新一次
刷新当前登录用户
aliyunpan token update

刷新所有登录的用户
aliyunpan token update -mode 2
将刷新refresh_token放入crontab内每小时自动执行一次: 
每小时执行一次Token刷新任务
*/60  * * * * /<your_aliyunpan_path>/aliyunpan token update -mode 2
5、输出当前工作目录: 
aliyunpan pwd
6、列出目录内容: 
aliyunpan ls
aliyunpan ls <目录>
7、切换工作目录: 
aliyunpan cd <目录>
8、下载文件/目录
aliyunpan download <网盘文件或目录的路径1> <文件或目录2> <文件或目录3> ...
aliyunpan d <网盘文件或目录的路径1> <文件或目录2> <文件或目录3> ...

可选参数

  --ow            overwrite, 覆盖已存在的文件
  --status        输出所有线程的工作状态
  --save          将下载的文件直接保存到当前工作目录
  --saveto value  将下载的文件直接保存到指定的目录
  -x              为文件加上执行权限, (windows系统无效)
  -p value        指定下载线程数 (default: 0)
  -l value        指定同时进行下载文件的数量 (default: 0)
  --retry value   下载失败最大重试次数 (default: 3)
  --nocheck       下载文件完成后不校验文件
  --exn value     指定排除的文件夹或者文件的名称,只支持正则表达式。支持排除多个名称,每一个名称就是一个exn参数

例子

# 设置保存目录, 保存到 D:\Downloads
# 注意区别反斜杠 "\" 和 斜杠 "/" !!!
aliyunpan config set -savedir D:/Downloads

# 下载 /我的文档/1.mp4
aliyunpan d /我的文档/1.mp4

# 下载 /我的文档 整个目录!!
aliyunpan d /我的文档

下载的文件默认保存到 程序所在目录 的 download/ 目录, 支持设置指定目录, 重名的文件会自动跳过!

通过 aliyunpan config set -savedir <savedir> 可以自定义保存的目录.

支持多个文件或目录下载.

自动跳过下载重名的文件!



9、上传文件/目录: 

aliyunpan upload <本地文件/目录的路径1> <文件/目录2> <文件/目录3> ... <目标目录>
aliyunpan u <本地文件/目录的路径1> <文件/目录2> <文件/目录3> ... <目标目录>

例子:

# 将本地的 C:\Users\Administrator\Desktop\1.mp4 上传到网盘 /视频 目录
# 注意区别反斜杠 "\" 和 斜杠 "/" !!!
aliyunpan upload C:/Users/Administrator/Desktop/1.mp4 /视频

# 将本地的 C:\Users\Administrator\Desktop\1.mp4 和 C:\Users\Administrator\Desktop\2.mp4 上传到网盘 /视频 目录
aliyunpan upload C:/Users/Administrator/Desktop/1.mp4 C:/Users/Administrator/Desktop/2.mp4 /视频

# 将本地的 C:\Users\Administrator\Desktop 整个目录上传到网盘 /视频 目录
aliyunpan upload C:/Users/Administrator/Desktop /视频

## 下面演示文件或者文件夹排除功能

# 将本地的 C:\Users\Administrator\Video 整个目录上传到网盘 /视频 目录,但是排除所有的.jpg文件
aliyunpan upload -exn "\.jpg$" C:/Users/Administrator/Video /视频

# 将本地的 C:\Users\Administrator\Video 整个目录上传到网盘 /视频 目录,但是排除所有的.jpg文件和.mp3文件,每一个排除项就是一个exn参数
aliyunpan upload -exn "\.jpg$" -exn "\.mp3$" C:/Users/Administrator/Video /视频

以下是典型的排除特定文件或者文件夹的例子,注意:参数值必须是正则表达式
1)排除@eadir文件或者文件夹:-exn "^@eadir$"
2)排除.jpg文件:-exn "\.jpg$"
3)排除.号开头的文件:-exn "^\."
4)排除~号开头的文件:-exn "^~"
5)排除 myfile.txt 文件:-exn "^myfile.txt$"

10、创建目录、删除文件/目录、移动文件/目录、重命名文件/目录
创建目录
aliyunpan mkdir <目录>
删除
aliyunpan rm <网盘文件或目录的路径1> <文件或目录2> <文件或目录3> ...

注意: 删除多个文件和目录时, 请确保每一个文件和目录都存在, 否则删除操作会失败.

被删除的文件或目录可在网盘文件回收站找回.

例子

# 删除 /我的文档/1.mp4
aliyunpan rm /我的文档/1.mp4

# 删除 /我的文档/1.mp4 和 /我的文档/2.mp4
aliyunpan rm /我的文档/1.mp4 /我的文档/2.mp4

# 删除 /我的文档 整个目录 !!
aliyunpan rm /我的文档
移动:

aliyunpan mv <文件/目录1> <文件/目录2> <文件/目录3> ... <目标目录>

注意: 移动多个文件和目录时, 请确保每一个文件和目录都存在, 否则移动操作会失败.

例子

# 将 /我的文档/1.mp4 移动到 根目录 /
aliyunpan mv /我的文档/1.mp4 /
重命名:

aliyunpan rename <旧文件/目录名> <新文件/目录名>

注意: 重命名的文件/目录,如果指定的是绝对路径,则必须保证新旧的绝对路径在同一个文件夹内,否则重命名失败!

例子

# 将 /我的文档/1.mp4 重命名为 /我的文档/2.mp4
aliyunpan rename /我的文档/1.mp4 /我的文档/2.mp4
11、分享和取消分享
分享:
aliyunpan share

设置分享文件/目录

阿里目前之支持少数文件类型的分享,不支持的文件分享会提示分享失败

aliyunpan share set <文件/目录1> <文件/目录2> ...
aliyunpan share s <文件/目录1> <文件/目录2> ...

[root@dev0:~]$ aliyunpan share set  故事.pdf
创建分享链接成功
链接:https://www.aliyundrive.com/s/vgpg2T9dGxJ 提取码:i07t



列出已分享文件/目录

aliyunpan share list
aliyunpan share l
[root@dev0:~]$ aliyunpan share l
  #   SHARE ID                    分享链接                   提取码          文件名                           FILE ID                        过期时间        状态
  0  vgpg2T9dGxJ  https://www.aliyundrive.com/s/vgpg2T9dGxJ  i07t    故事.pdf                 6213429ebb32f702aadd4eca9505d4bc5721e456  永久有效





取消分享文件/目录

aliyunpan share cancel <shareid_1> <shareid_2> ...
aliyunpan share c <shareid_1> <shareid_2> ...

目前只支持通过分享id (shareid) 来取消分享.


[root@dev0:~]$ aliyunpan share cancel vgpg2T9dGxJ
取消分享操作成功
[root@dev0:~]$ aliyunpan share l
  #   SHARE ID                    分享链接                   提取码          文件名                           FILE ID                        过期时间        状态

tip:取消分享时用c好像有问题,分享取消不了,我使用cancel才取消的


重点关注了上传和下载文件,其他命令还是参看这里