2012-11-14 3 views
1

안녕하세요. 저는 현재 sys ad assistant로 일하고 있습니다. 나는 단지 디렉토리 (그리고 그것의 서브 디렉토리)의 파일이 수정되었다는 것을 어떻게 알 수 있는지 알고 싶다. 나는 모든 PHP 코드를 데이터베이스에 넣어야 할 필요가 있느냐? 파일의 어느 부분이 수정되었는지 알 수있는 가능성이 있습니까? 감사합니다. 도와주세요.디렉토리의 파일이 수정되었는지 확인하십시오.

+0

날짜를 확인하십시오. –

+0

filesystemwatcher와 같은 것을 사용하여 업데이트를 캐치하거나 데이터베이스에 md5 파일 해시를 저장하고 폴더를 지속적으로 크롤링 할 수 있습니다. http://stackoverflow.com/questions/540339/how-to-check-if-directory-contents- has-changed-with-php – mellamokb

+0

은 데이터베이스에 날짜와 시간 및 파일 이름과 같은 파일 modify.hidden 값을 숨길 때 숨겨진 값을 전달합니다. –

답변

0

데이터베이스 참조가 의미하는 바가 확실하지 않지만 일반적으로 파일 작성일을 알고 있으면 filemtime이 다른지 확인할 수 있습니다. 그러나 나는 파일 수정 시간을 사용하는 것에 조금주의를 기울였다. 나는 그들이 오해의 소지가있는 몇 가지 예를 발견 했으므로 이것을 소금 한 알씩 가져 가라.

백업 또는 RCS를 통해 파일의 이전 버전을 사용하는 것 외에 어떤 부분이 수정되었는지 어떻게 볼 수 있는지 생각할 수 없습니다.

+0

이제 어떻게 든 대답을 찾을 수 있습니다. 어쨌든 bash scripting..thnx를 통해 도움을받습니다. –

+0

의견이나 답변으로 찾은 답변을 게시 하시겠습니까? 누군가가 비슷한 문제가있을 수 있으며이 스레드에서 비틀 거릴 수 있습니다. – RonaldBarzell

0

filemtime()을 사용하면 파일이 마지막으로 변경된 시간이 표시됩니다.

그러나 버전 제어 시스템을 실행하지 않는 한 어떤 차이가 있는지 알 수 없습니다.

+0

filemtime이 아닌 filemtime입니다. –

+0

@MarcB 물론, 고마워요! – ComFreek

0

sys ad assistant로 일하기 때문에 Python을 사용할 수도 있습니다. 그렇다면 watchdog 라이브러리 사용을 고려해보십시오. 나는 그것이 완벽하다고 생각합니다.

파이썬을 사용하면 프로그래밍 방식으로 linux/unix diff 명령을 사용할 수 있습니다. 이 경우 파이썬 sh 모듈을 체크 아웃 할 수 있습니다.이 모듈을 사용하면 파이썬 코드에서 diff (으)로 전화 할 수 있습니다.

php는 sysadmin이 필요로하는 거의 완벽한 솔루션이 아닙니다. 그리고 파이썬은 PHP보다 배우기가 더 쉽습니다.

관련 문제