1

正規表現パターンを含むディレクトリの下にあるすべてのファイルを再帰的に検索するにはどうすればよいですか? パターンは UTF-8 文字列です。

Python、Perl、または bash を使用した任意のソリューションが適切です。

4

2 に答える 2

4
grep -lr "pattern" /mydirectory/*

パターンが見つかった mydirectory のすべてのファイルを一覧表示します。

于 2013-10-26T07:18:15.900 に答える
2

を使用する Python ソリューションos.walk

import os
import re

target_dir = '.'
pattern = re.compile(r'blah')

for parent, dirnames, filenames in os.walk(target_dir):
    for fn in filenames:
        filepath = os.path.join(parent, fn)
        try:
            with open(filepath) as f:
                if any(pattern.search(line) for line in f):
                    print(filepath)
        except IOError:
            pass
于 2013-10-26T07:19:03.037 に答える