6장. 전체 시스템 프로그램
이 작품은 AI를 사용하여 번역되었습니다. 여러분의 피드백과 의견을 환영합니다: translation-feedback@oreilly.com
"분노의 그렙"
이 장에서는 디렉터리 트리 비교 및 복사, 파일 분할, 파일 및 디렉터리 검색, 다른 프로그램 테스트, 실행된 프로그램의 셸 환경 구성 등 실제 시스템 작업을 수행하는 대규모 Python 스크립트 모음을 제시함으로써 Python의 시스템 인터페이스 도메인에 대한 살펴보기를 마무리합니다. 여기 예제는 이 영역의 일반적인 작업과 기술을 설명하고 파일 및 디렉터리 트리 처리와 같은 기본 제공 도구를 적용하는 데 중점을 둔 Python 시스템 유틸리티 프로그램입니다.
이 사례 연구 장의 주요 요점은 실제 스크립트가 작동하는 것을 느낄 수 있도록 하는 것이지만, 이 예제의 규모를 보면 객체 지향 프로그래밍(OOP) 및 재사용과 같은 개발 패러다임에 대한 Python의 지원도 확인할 수 있습니다. 이러한 도구가 실질적인 결실을 맺기 시작하는 것은 여기서 만나게 될 프로그램과 같은 사소하지 않은 프로그램의 맥락에서만 가능합니다. 이 장에서는 시스템 도구의 '방법'뿐만 아니라 '왜'를 강조하며, 그 과정에서 앞으로 공부할 예제를 통해 충족되는 실제 요구 사항을 지적하여 세부 사항을 맥락에 맞게 파악할 수 있도록 도와드리겠습니다.
한 가지 미리 말씀드리자면 이 장은 빠르게 진행되며, 몇 가지 예제는 대부분 독립적인 학습을 위해 나열되어 있습니다. 여기에 있는 모든 스크립트는 문서화가 많이 되어 있고 이전 장에서 설명한 Python 시스템 도구를 사용하기 때문에 모든 코드를 꼼꼼히 살펴보지는 않겠습니다. 소스 코드 목록을 읽고 자신의 컴퓨터에서 이러한 프로그램을 실험해 보면서 시스템 인터페이스를 결합하여 현실적인 작업을 수행하는 방법에 대한 감을 익혀야 합니다. 모든 예제는 이 책의 예제 배포에 소스 코드 형태로 제공되며, 대부분의 예제는 모든 주요 플랫폼에서 작동합니다.
이 예제들은 대부분 이 책을 위해 작성된 예제가 아니라 제가 실제로 사용했던 프로그램이라는 점도 말씀드리고 싶네요. 수년에 걸쳐 코딩되었고 매우 다양한 작업을 수행하므로 필요성 외에는 뚜렷한 공통점이 없습니다. 반면에 시스템 도구가 유용한 이유를 설명하고, 단순한 예제에서는 설명할 수 없는 더 큰 개발 개념을 보여주며, Python으로 시스템 작업을 자동화하는 것이 얼마나 간단하고 이식성이 좋은지 집단적으로 증명합니다. 기본 사항을 마스터하고 나면 더 빨리 시작했더라면 하는 아쉬움이 남을 것입니다.
"가장 큰 Python 파일 찾기"의 간단한 게임
컴퓨터에서 가장 큰 Python 소스 파일은 무엇인가요? 이 질문은 제가 진행하던 Python 수업에서 한 학생이 순진하게 던진 질문이었습니다. 저도 몰랐기 때문에 이후 수업에서 공식적인 연습 문제가 되었고, 이 책에서 Python 시스템 도구를 현실적인 목적으로 적용하는 방법에 대한 좋은 예시를 제공합니다. 사실 쿼리는 그 범위가 불분명하기 때문에 약간 모호합니다. 디렉터리, ...