Python实现的根据文件名查找数据文件功能
import os
import shutil
AllFiles=[]
NameFiles=[]
def findFie(filePath):
pathDir = os.listdir(filePath)
for allDir in pathDir:
# print(allDir)
AllFiles.append(allDir)
#pass
#filepath = 'C:\\Users\\IBM_ADMIN\\Desktop\\cognos\\datastage\\71&72\\71\\71sns'
#copyfile = 'C:\\Users\\IBM_ADMIN\\Desktop\\cognos\\datastage\\71&72\\71mtp'
filepath = 'C:\\Users\\IBM_ADMIN\\Desktop\\cognos\\datastage\\71&72\\72\\72sns'
copyfile = 'C:\\Users\\IBM_ADMIN\\Desktop\\cognos\\datastage\\71&72\\72mtp'
shutil.rmtree(copyfile)
os.mkdir(copyfile)
findFie(filepath)
def readFile():
readFile = open('./jobname')
i = 0
for eachLine in readFile:
i= i + 1
#print(eachLine)
NameFiles.append(eachLine.replace('\n','')) # 去掉换行符
readFile()
#字符串比较
def doTheCompare():
for x in NameFiles:
print(x)
for y in AllFiles:
if x == y :
copyFrom = os.path.join(filepath,x)
copyTo = os.path.join(copyfile,x)
shutil.copyfile(copyFrom,copyTo)
else:
pass
#print ("file not find under sns process,thanks .please check with wumi.")
doTheCompare()
这里再补充一个更为简单的文件搜索功能:
import os
def search(path=".", name="1"):
for item in os.listdir(path):
item_path = os.path.join(path, item)
if os.path.isdir(item_path):
search(item_path, name)
elif os.path.isfile(item_path):
if name in item:
print(item_path)
if __name__ == "__main__":
search(path=r"D:\360Downloads",name="dll")