递归查找文件,递归查找,[Python]代码#!
递归查找文件,递归查找,[Python]代码#!
[Python]代码
#!/usr/bin/python#-*-coding:utf8-*-import sysimport osimport argparseimport pdbfrom pprint import pprintdef find_path_file(specific_file,search_directory): """ result_path_filename """ result_path_filename = list() result_path_filename.extend([os.path.join(dirpath,filename) for dirpath,dirnames,filenames in os.walk(search_directory) for filename in filenames if os.path.splitext(filename)[1] == ('.' + specific_file)]) pprint(result_path_filename)def find_file(specific_file,search_directory): """ result_filename don't have path """ result_filename = list() os.path.walk(search_directory,lambda arg,dirname,names:result_filename.extend([i for i in names if os.path.splitext(i)[1] == ('.' + specific_file)]),()) pprint(result_filename)def save_result_to_file(_filename,specific_file,search_directory): """ save result to specific file """ result_path_filename = list() result_path_filename.extend([os.path.join(dirpath,filename) for dirpath,dirnames,filenames in os.walk(search_directory) for filename in filenames if os.path.splitext(filename)[1] == ('.' + specific_file)]) with open(_filename,'w') as f: f.write("\n".join(result_path_filename))if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument("file_suffix",help="specific the file suffix") parser.add_argument("rootdir",help="specific the root directory") parser.add_argument("-f","--file",help="record result to file") args = parser.parse_args() specific_file = args.file_suffix search_directory = args.rootdir if args.file: filename = args.file save_result_to_file(filename,specific_file,search_directory) else:# find_file(specific_file,search_directory) find_path_file(specific_file,search_directory)
find_file.py
#!/usr/bin/python#-*-coding:utf8-*-import sysimport osimport argparseimport pdbfrom pprint import pprintdef find_path_file(specific_file,search_directory): """ result_path_filename """ result_path_filename = list() result_path_filename.extend([os.path.join(dirpath,filename) for dirpath,dirnames,filenames in os.walk(search_directory) for filename in filenames if os.path.splitext(filename)[1] == ('.' + specific_file)]) pprint(result_path_filename)def find_file(specific_file,search_directory): """ result_filename don't have path """ result_filename = list() os.path.walk(search_directory,lambda arg,dirname,names:result_filename.extend([i for i in names if os.path.splitext(i)[1] == ('.' + specific_file)]),()) pprint(result_filename)def save_result_to_file(_filename,specific_file,search_directory): """ save result to specific file """ result_path_filename = list() result_path_filename.extend([os.path.join(dirpath,filename) for dirpath,dirnames,filenames in os.walk(search_directory) for filename in filenames if os.path.splitext(filename)[1] == ('.' + specific_file)]) with open(_filename,'w') as f: f.write("\n".join(result_path_filename))if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument("file_suffix",help="specific the file suffix") parser.add_argument("rootdir",help="specific the root directory") parser.add_argument("-f","--file",help="record result to file") args = parser.parse_args() specific_file = args.file_suffix search_directory = args.rootdir if args.file: filename = args.file save_result_to_file(filename,specific_file,search_directory) else:# find_file(specific_file,search_directory) find_path_file(specific_file,search_directory)
相关内容
- FFT估计,,用Python进行FFT
- Python FTP暴力破解工具,pythonftp暴力破解,[Python]代码#!
- SSH代理连接器,ssh连接器,[Python]代码#
- 从百度MP3中批量下载某歌手的歌,百度mp3歌手,download
- python之POP详解,pythonpop,[Python]代码#!
- Basic Blog,basicblog,main.pyimpor
- 使用Gmail发送邮件的Python脚本,gmailpython,[Python]代码
- [娱乐] 画菱形,娱乐画菱形,[Python]代码 w
- User signup (HTML and Python),signuppython,[Python]代码#!
- 基于python的web表单提交方法,pythonweb表单,[Python]代码
评论关闭