#! /usr/bin/python
#! -*- encoding:utf-8 -*-
'''
#author:wasua
#date:2019/04/08
#
'''
'''
找输入目录下面的包含输入字符的特定文件
输入: 目录 查找字符 文件种类(后缀名)
'''
import os
from sys import argv
file_list=[]
def find_file(parent_dir,file_dir_name):
file_dir_abspath=os.path.join(parent_dir,file_dir_name)
if os.path.isdir(file_dir_abspath): #传入目录为文件
for f in os.listdir(file_dir_abspath):
find_file(file_dir_abspath,f)
else:
if file_dir_abspath.endswith(file_type): #传入目录为文件且特定结尾
if read_and_find_character(file_dir_abspath): #读取该特定文件,并查看是否包含特定字符
file_list.append(file_dir_abspath)
def read_and_find_character(f):
flag=False
with open(f) as fd:
while True:
line=fd.readline()
if line=='':
break
elif character in line:
flag=True
break
return flag
parent_dir=argv[1][:argv[1].rfind('/')+1]
file_dir_name=argv[1][argv[1].rfind('/')+1:]
character=argv[2]
file_type=argv[3]
find_file(parent_dir,file_dir_name)
print(file_list)