我想以递归方式将某些文件从服务器位置复制到我的机器,同时保留目录结构。
服务器结构
/opt/shared/dir1/dir2/dir3/sample.json
/opt/shared/dir1/dir2/dir3/sample2.json
/opt/shared/dir1/dir2/sample.json
/opt/shared/dir1/dir2/sample2.json
我想找到从/ opt / shared / dir1开始的所有sample.json,并将这些复制到我的本地机器上,维护结构。
/home/users/a/dir1/dir2/dir3/sample.json
/home/users/a/dir1/dir2/sample.json
我正在使用python2.7
我可以在服务器上使用os.walk来获取所有文件但是
如何复制以创建目录结构?
如何使用scp以便复制到我的机器上?
import os
import fnmatch
top=/opt/shared/dir1
allfiles=[]
filepattern="sample.json"
for path, dirlist, filelist in os.walk(top):
for name in fnmatch.filter(filelist,filepattern):
allfiles.append(os.path.join(path,name))