Last active
August 2, 2018 18:24
-
-
Save agusmakmun/16bbacc4a450dae22fee38eee0e13182 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import os | |
import glob | |
import time | |
import hashlib | |
import tempfile | |
user_ssl_path = 'aditya/ssl' | |
userdata = glob.glob('/home/agaust/%s/*' % user_ssl_path) | |
userdata.sort(key=os.path.getmtime) | |
tmp_folder = os.path.join(tempfile.gettempdir(), user_ssl_path) | |
def hash_checker(): | |
data = '' | |
for filename in userdata: | |
data += '%s\n' % filename | |
to_hash = hashlib.sha1(data.encode('utf-8')).hexdigest() | |
new_hash_file = '%s/%s' % (tmp_folder, to_hash) | |
if not os.path.exists(new_hash_file): | |
try: | |
# membuat folder '/username/ssl' | |
# apabila sebelumnya belum ada di '/tmp/' | |
os.makedirs(tmp_folder) | |
except FileExistsError: | |
# melewati folder '/username/ssl' | |
# jika folder tsb sudah ada do '/tmp' | |
pass | |
try: | |
# mengecek kesamaan hash | |
# antara yang lama dengan yang baru | |
# apabila tidak sama, dan ada hash lama, | |
# maka hash lama dihapus diganti hash baru | |
old_hash_filename = os.listdir(tmp_folder)[0] | |
if old_hash_filename != os.path.split(new_hash_file)[-1]: | |
os.remove('%s/%s' % (tmp_folder, old_hash_filename)) | |
except IndexError: | |
pass | |
# membuat hash baru, ini sudah terkondisikan | |
# dengan `if not os.path(...) diatas` | |
f = open(new_hash_file, 'w') | |
f.write(to_hash) | |
f.close() | |
print('tmp: %s' % new_hash_file) | |
print(tmp_folder) | |
print(os.listdir(tmp_folder)) | |
hash_checker() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment