colab 从云端批量下载文件到本地

1. 云端下载到本地

方式1:比如要下载train2014目录下所有的文件,则cd到该目录,具体如下,如果要下载多层文件夹下的文件需要对下面代码做些修改 。

import os
from google.colab import files

def traverse_dir(data_dir):
  file_name_list = os.listdir(data_dir)
  for file_name in file_name_list:
    files.download('{}/{}'.format(data_dir, file_name))  # 多层文件夹需要修改这里

traverse_dir('train2014')

方式2:或者方案2, 先打包再下载 (建议使用)

import os, tarfile
 
import os
from google.colab import files
 
 
#逐个添加文件打包,未打包空子目录。可过滤文件。
#如果只打包不压缩,将"w:gz"参数改为"w:"或"w"即可。
def make_targz_one_by_one(output_filename, source_dir):
  tar = tarfile.open(output_filename,"w")
  for root,dir_name,files_list in os.walk(source_dir):
    for file in files_list:
      pathfile = os.path.join(root, file)
      tar.add(pathfile)
  tar.close()
 
  files.download(output_filename)
 
 
make_targz_one_by_one('train2014_tar', 'train2014')

如果云盘空间 不够,可以删除掉已经下好的文件夹

import shutil
shutil.rmtree('labels')

 2. 本地上传到云端:

通过如下界面左边,简单的点击操作,也可以像上面一样写代码实现上传,可以参考链接

colab 从云端批量下载文件到本地_第1张图片

 

你可能感兴趣的:(工具)