Python-사용자가 파일을 변경했는지 확인

Kacper Czyż

방금 코드를 작성했습니다.

    hasher = hashlib.sha1()
    inputFile = open(inputPath, 'r')

    hasher.update(inputFile.read().encode('utf-8'))
    oldHash = hasher.hexdigest()
    newHash = ''

    while True:

        hasher.update(inputFile.read().encode('utf-8'))
        newHash = hasher.hexdigest()

        if newHash != oldHash:
            print('xd')

        oldHash = newHash

신속하게 sass 컴파일러를 작성하고 사용자가 파일을 변경했는지 확인하는 방법을 작성해야합니다. 파일에 무언가를 추가 할 때만 작동하지만 단어 또는 문자를 삭제할 때 감지하지 못합니다.

왜 그런지 아십니까?

발렌틴

해시를 즉시 확인하는 대신을 사용하여 마지막 수정 시간을 확인할 수 있습니다 os.path.getmtime(path).

고려하면:

in_path = "" # The sass/scss input file
out_path = "" # The css output file

그런 다음 파일이 변경되었는지 확인하기 만하면됩니다.

if not os.path.exists(out_path) or os.path.getmtime(in_path) > os.path.getmtime(out_path):
    print("Modified")
else:
    print("Not Modified")

파일이 수정되었는지 확인한 후 해시를 확인할 수 있습니다.

import hashlib

def hash_file(filename, block_size=2**20):
    md5 = hashlib.md5()
    with open(filename, "rb") as f:
        while True:
            data = f.read(block_size)
            if not data:
                break
            md5.update(data)
    return md5.digest()

if not os.path.exists(out_path) or hash_file(in_path) != hash_file(out_path):
    print("Modified")
else:
    print("Not Modified")

전체적으로 다음과 같이 if 문을 결합 할 수 있습니다.

if not os.path.exists(out_path) \
        or os.path.getmtime(in_path) > os.path.getmtime(out_path) \
        or hash_file(in_path) != hash_file(out_path):
    print("Modified")
else:
    print("Not Modified")

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

사용자가 Android에서 생체 인식 / 지문을 변경했는지 확인

분류에서Dev

사용자가 뷰 모델에서 속성을 변경했는지 확인하는 방법

분류에서Dev

객체 클래스 Python을 만들 때 사용자가 올바른 유형 (제 경우에는 목록)을 입력했는지 어떻게 확인합니까?

분류에서Dev

Laravel-사용자가 기록을 제출했는지 확인

분류에서Dev

사용자가 Javascript로 파일을 업로드했는지 확인하는 방법

분류에서Dev

사용자가 파일을 포함했는지 확인하는 방법 (런타임 동안)

분류에서Dev

Ruby on Rails : 사용자가 확인란을 선택했는지 확인

분류에서Dev

사용자가 정확한 문자열을 입력했는지 확인

분류에서Dev

Google App Engine Python : 사용자가 항목을 '보았는지'확인

분류에서Dev

사용자가 경고 대화 상자에 버튼을 입력했는지 확인하는 방법

분류에서Dev

Laravel 4-사용자가 일부 콘텐츠를 사용했는지 확인

분류에서Dev

Python을 사용하여 CSV 파일에 데이터가 이미 있는지 확인하는 방법

분류에서Dev

Python : .txt 파일에 변수가 있는지 확인

분류에서Dev

사용자가 배열을 사용하여 동일한 문자열을 두 번 입력했는지 확인

분류에서Dev

WPF : 사용자가 컨트롤 중 하나를 변경했는지 확인

분류에서Dev

사용자가 Facebook을 통해 로그인했는지 확인하는 방법

분류에서Dev

fopen (..., 'a')가 새 파일을 생성했는지 확인

분류에서Dev

RegEx Python을 사용하여 대체 문자가 문자열에서 유사한 지 확인하는 방법

분류에서Dev

AngularJS-사용자가 로그인했는지 여부에 따라 href 속성을 변경합니까?

분류에서Dev

폴더 삭제가 성공했는지 Python을 확인하고 예인 경우 계속하십시오.

분류에서Dev

If, then ... fi 명령을 사용하여 사용자가 올바른 파일 형식을 입력했는지 확인하는 방법은 무엇입니까?

분류에서Dev

PHP, 사용자가 주소가 아닌 이메일 도메인을 입력했는지 확인

분류에서Dev

사용자가 선택을 유발했는지 확인하는 방법

분류에서Dev

Rails는 사용자가 어떤 앱을 설치했는지 확인합니까?

분류에서Dev

Python 3.5-변수가 파일과 동일한 지 확인

분류에서Dev

사용자가 PHP를 사용하여 파일을 업로드했는지 확인하는 방법은 무엇입니까?

분류에서Dev

특정 사용자가 discord.py 명령을 수행했는지 확인

분류에서Dev

사용자가 여러 필드에서 값을 선택했는지 확인

분류에서Dev

사용자가 C에서 파일의 소유자인지 확인 정보

Related 관련 기사

  1. 1

    사용자가 Android에서 생체 인식 / 지문을 변경했는지 확인

  2. 2

    사용자가 뷰 모델에서 속성을 변경했는지 확인하는 방법

  3. 3

    객체 클래스 Python을 만들 때 사용자가 올바른 유형 (제 경우에는 목록)을 입력했는지 어떻게 확인합니까?

  4. 4

    Laravel-사용자가 기록을 제출했는지 확인

  5. 5

    사용자가 Javascript로 파일을 업로드했는지 확인하는 방법

  6. 6

    사용자가 파일을 포함했는지 확인하는 방법 (런타임 동안)

  7. 7

    Ruby on Rails : 사용자가 확인란을 선택했는지 확인

  8. 8

    사용자가 정확한 문자열을 입력했는지 확인

  9. 9

    Google App Engine Python : 사용자가 항목을 '보았는지'확인

  10. 10

    사용자가 경고 대화 상자에 버튼을 입력했는지 확인하는 방법

  11. 11

    Laravel 4-사용자가 일부 콘텐츠를 사용했는지 확인

  12. 12

    Python을 사용하여 CSV 파일에 데이터가 이미 있는지 확인하는 방법

  13. 13

    Python : .txt 파일에 변수가 있는지 확인

  14. 14

    사용자가 배열을 사용하여 동일한 문자열을 두 번 입력했는지 확인

  15. 15

    WPF : 사용자가 컨트롤 중 하나를 변경했는지 확인

  16. 16

    사용자가 Facebook을 통해 로그인했는지 확인하는 방법

  17. 17

    fopen (..., 'a')가 새 파일을 생성했는지 확인

  18. 18

    RegEx Python을 사용하여 대체 문자가 문자열에서 유사한 지 확인하는 방법

  19. 19

    AngularJS-사용자가 로그인했는지 여부에 따라 href 속성을 변경합니까?

  20. 20

    폴더 삭제가 성공했는지 Python을 확인하고 예인 경우 계속하십시오.

  21. 21

    If, then ... fi 명령을 사용하여 사용자가 올바른 파일 형식을 입력했는지 확인하는 방법은 무엇입니까?

  22. 22

    PHP, 사용자가 주소가 아닌 이메일 도메인을 입력했는지 확인

  23. 23

    사용자가 선택을 유발했는지 확인하는 방법

  24. 24

    Rails는 사용자가 어떤 앱을 설치했는지 확인합니까?

  25. 25

    Python 3.5-변수가 파일과 동일한 지 확인

  26. 26

    사용자가 PHP를 사용하여 파일을 업로드했는지 확인하는 방법은 무엇입니까?

  27. 27

    특정 사용자가 discord.py 명령을 수행했는지 확인

  28. 28

    사용자가 여러 필드에서 값을 선택했는지 확인

  29. 29

    사용자가 C에서 파일의 소유자인지 확인 정보

뜨겁다태그

보관