2014-10-20 7 views
0

특정 디렉토리 내에서 새로 발견 된 파일을 먼저 편집 한 다음 incron/python을 통해 업로드하는 방법은 무엇입니까? 파이썬 스크립트에서 파일 이름을 문자열로 지정하는 방법으로 약간 혼란 스럽습니다.incrond/python을 통해 파일을 편집하는 방법

incrontab의 -e :

파이썬 코드
/var/test IN_CREATE /var/pythoncode/code.py 

: 기본적으로

s = open("confused.txt").read() 
s = s.replace("string1", "string2") 
f = open("confused.txt", 'w') 
f.write(s) 
f.close() 

, 내가 incron 서비스가 /var/test 폴더 내에서 발견 된 모든 새로운 파일을 찾을 수 있고, 다음 파이썬을 실행하기 위해 노력하고 있어요 /var/test에있는 새 파일 내의 문자열을 찾아 교체하는 코드. 그러나 "confused.txt" 파일 이름 문자열에 접근하는 방법은 확실하지 않습니다. /var/test에있는 각 파일은 동적 이름을 갖기 때문입니다.

1 단계 - -

답변

0

다음은 스크립트와 구절도 있습니다 가정 해결의 (모든 변경 및 ls에 $ 파일을 이름을 가져올 수) 디렉토리에있는 파일을 변경합니다.

2 단계 - 변수 $의 LAST_FILE의 마지막 파일 이름을 저장

3 단계 -

find /var/test/ -newer $LAST_FILE 

또는

find /var/test/ -type f -newer $LAST_FILE 
- $ LAST_FILE보다 새로운 파일을 찾기 위해 WHILE 루프를 실행

또는

find /var/test/ -type f -iname "*.txt" -newer $LAST_FILE 

편집 한 마지막 파일보다 최신 파일을 나열합니다. 따라서이 목록을 "파일 변경"스크립트로 구문 분석하십시오.