如何检查目录/子目录中的任何文件中是否存在字符串?
How can I check if a string exists in any file within a directory / subdirectory?
我有一个字符串列表,我想打印出目录中文件中不存在的所有字符串。 (我不想检查 headers)
我知道如何遍历列表,但一直无法找到如何在目录的所有文件中搜索。
这是我目前得到的:
import fnmatch
import os
matches = []
for root, dirnames, filenames in os.walk('BrowserClient'):
for filename in fnmatch.filter(filenames, 'file.png'):
print filename
这只搜索文件名,我想搜索目录和子目录中的每个文件。
您必须 open
文件:
import fnmatch
import os
targets = ['Hello', 'World', 'Foo', 'Bar']
matches = []
for root, dirnames, filenames in os.walk('BrowserClient'):
for filename in fnmatch.filter(filenames, 'file.png'):
for word in open(filename, 'r').read().split():
for item in target:
if word == item:
matches.append([filename, item])
我有一个字符串列表,我想打印出目录中文件中不存在的所有字符串。 (我不想检查 headers)
我知道如何遍历列表,但一直无法找到如何在目录的所有文件中搜索。
这是我目前得到的:
import fnmatch
import os
matches = []
for root, dirnames, filenames in os.walk('BrowserClient'):
for filename in fnmatch.filter(filenames, 'file.png'):
print filename
这只搜索文件名,我想搜索目录和子目录中的每个文件。
您必须 open
文件:
import fnmatch
import os
targets = ['Hello', 'World', 'Foo', 'Bar']
matches = []
for root, dirnames, filenames in os.walk('BrowserClient'):
for filename in fnmatch.filter(filenames, 'file.png'):
for word in open(filename, 'r').read().split():
for item in target:
if word == item:
matches.append([filename, item])