现在大多数小伙伴办公都是使用远程服务器,那么往服务器上传大文件(例如数据集等)就是不可避免的操作,但是用xshell,vscode等方式传输需要的时间太久了,大文件也会面临传输中断。
这里介绍一个非常好用的远程大文件传输插件——bypy。他可以快速从百度网盘中将大文件下载到远程服务器上,耗时很短,也基本上没有中断的情况。重点是,使用命令行没有限速!!!下面将从下载到使用进行全方位介绍。
下载
在远程服务器下载bypy包
首先在数据集的目标地址(也就是远程机)上下载bypy包。这里需要有python环境,如果大家怕把环境搞乱的话,也可以新建环境,在这里不多做赘述。下载命令:
pip install bypy
# 如果pip用不了,可以把pip换成pip3
# 如果提示pip不存在,可以先根据服务器的类型,用默认工具下载pip
在远程服务器登录百度网盘账号
等安装包下载完成后,随便输入一条bypy相关的指令,就可以激活bypy。在这里我使用
bypy list
然后会出现一个链接,复制当前链接,在本地的浏览器中打开
打开后浏览器长这样
点击“复制授权码”复制代码,然后粘贴到远程服务器的命令行中,点击回车
【这里等待时间可能很漫长,我当时等了6-7分钟才好,所以千万不要Ctrl+C中断】
成功后,就可以免登录直接下载文件了。
使用
列出目录
bypy list [目录]
这里可以不加目录参数。根目录对应的是百度网盘app目录(我的应用数据)/bypy下的内容。 当然也可以加参数来在根目录下进一步细化。
下载文件
bypy download <百度网盘目录> [远程目录]
这里的百度网盘目录是根据/app/bypy之后写就可以,是一个必填项。
远程目录如果不填的话,就默认是当前所处位置。我一般是进入了需要下载的地方,才输入指令,就不输入远程目录了。这个文件夹也可以适用。
当然,如果你只想批量下载文件夹中的内容,而不想要文件夹的话,可以用以下命令
bypy downdir <百度网盘对应目录的位置>
这样就只会批量下载文件夹中的内容,而不会下载文件夹。
上传文件
bypy upload <远程服务器路径> [百度网盘路径]
其他
# 查看配额
bypy quota
# 查看文件信息
bypy info <远程文件路径>
# 比较本地和远程目录
bypy compare <本地目录> <远程目录>