Linux의 cron-scheduled Python 2.7
프로그램을 사용하여 CodeIgniter
응용 프로그램 트리 내에서 다양한 HTML 파일 부품, 이미지 축소판 등을 만듭니다. 실제 Python 프로그램은 다음과 같이 응용 프로그램 디렉토리의 한 수준 아래 서브 디렉토리에있는 CodeIgniter
트리 아래에 있습니다.Python Linux의 서브 디렉토리에서 최상위 디렉토리 찾기
codeigniter/web-root
|
application
| |
| scripts
| | |
| | my-program.py
| |
| database
| |
| database.sqlite
images
은 내가 os.path
모듈에서 my-program.py
사용 방법 내에서 codeigniter/web-root
디렉토리를 결정합니다. 그러나 codeigniter/web-root
의 절대 경로는 개발 환경과 생산 환경에 따라 다르므로이 경로 정보를 Python 프로그램 자체에 하드 와이어하지 않는 것이 좋습니다.
현재 스크립트는 다음 구성을 사용하여 두 환경에서 스크립트 자체 위에있는 두 개의 디렉토리 수준 인 "codeigniter/web-root"의 절대 경로를 결정합니다.
#!/bin/env python2.7
import os.path
ci_root = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
여러 os.path.dirname
전화를 사용하지 않고 최상위 수준 (ci_root) 디렉토리를 판별 할 수있는 청소기 방법이 있나요?
shtako ... 당신했다 빠른 :) 사실이 너무 뛰어 원인 일 – Ochi
을 하나의 디렉토리 레벨이 너무 많습니다. 시작 디렉토리가 프로그램 실행에 영향을 미치지 않도록 항상 __file__ 속성을 기반으로이 작업을 수행 할 수있는 방법이 있습니까? 예를 들어, cronjob과 함께 $ HOME 디렉토리에서 이것을 실행하려면 상대 경로가 지정되어 있기 때문에 프로그램이 중단됩니다. – JTP