在需要下载/上传很多文件的时候,为了不一个一个点击操作,可以先将需要下载/上传的文件打包,然后下载上传压缩包,再解压
批量下载
- 方法一:
#要下载的是这个路径的内容
path='/home/user/data/student_id/'
#打包这个路径中所有文件,除了.ipynb_checkpoints文件,生成zip文件student_id,输出在当前code所在路径
! find {path} |grep -v .ipynb_checkpoints |zip student_id.zip [email protected]
# 打包这个路径中所有txt及ipynb文件,除了.ipynb_checkpoints文件,生成zip文件student_id,输出在当前code所在路径
# ! find {path} |grep -E 'txt$|ipynb$'|grep -v .ipynb_checkpoints |zip student_id.zip [email protected]
- 方法二
#要下载的是这个路径的内容
path='/home/user/data/student_id/'
import zipfile,os
zipName = '/home/user/data/student_id.zip' #压缩后文件的位置及名称
f = zipfile.ZipFile( zipName, 'w', zipfile.ZIP_DEFLATED )
for dirpath, dirnames, filenames in os.walk(path):
for filename in filenames:
print(filename)
f.write(os.path.join(dirpath,filename))
f.close()
批量上传
在本地先将需要上传的文件打包压缩,上传压缩包然后解压
zipName = '/home/user/data/student_id.zip' #需要解压的文件的位置及名称
f = zipfile.ZipFile(zipName, 'r')
for file in f.namelist():
f.extract(file, path)