다른 명령
Python과 grep 라이브러리를 이용한 문자열 포함 파일 검색 예제
- `grep` 라이브러리를 이용하여, 특정 디렉토리 내에 검색한 문자열을 포함하는 파일을 빠르게 찾는 예제 프로그램.
라이브러리 설치
- 먼저 `grep` 라이브러리가 설치
pip install grep
프로그램 코드
사용자가 입력한 디렉토리와 검색할 문자열을 기준으로, 해당 디렉토리(및 하위 폴더)의 텍스트 파일 중 검색어가 포함된 파일 경로 출력.
import grep import os def find_files_with_text(directory, search_str): matches = [] # 'recursive=True'로 하위 폴더도 탐색 for result in grep.grep(search_str, directory, recursive=True, include='*.txt'): matches.append(result['filename']) # 중복 제거 return list(set(matches)) if __name__ == "__main__": directory = input("검색할 디렉토리 경로를 입력하세요: ").strip() search_str = input("검색할 문자열을 입력하세요: ").strip() matched_files = find_files_with_text(directory, search_str) if matched_files: print("검색 문자열이 포함된 파일 목록:") for filename in matched_files: print(filename) else: print("검색 문자열이 포함된 파일을 찾을 수 없습니다.")
사용 방법
- 프로그램을 실행합니다.
- 검색할 디렉토리 경로(예: `C:\\Users\\username\\Documents`)와 문자열을 입력합니다.
- 검색 문자열이 포함된 모든 `.txt` 파일의 경로가 출력됩니다.
참고
- `grep.grep` 함수는 여러 검색 옵션을 제공하므로, 문서(https://pypi.org/project/grep/)를 참조하여 필요에 따라 include/exclude 패턴, 대소문자 구분 등 다양한 기능을 활용하실 수 있습니다. - 만약 텍스트 파일 이외 모든 파일을 검색대상으로 하려면 `include='*'`로 변경하시면 됩니다.
---
추가적인 기능(예: 정규표현식 사용, 표시 결과 저장 등)이 필요하시면 언제든 문의해 주십시오.