python-tools/scans/scans.py
ahosking e2669dd265 Add Scans
Watch a given directory for changes and print out the file list difference
2023-05-30 13:44:26 -04:00

43 lines
1.1 KiB
Python

from os import listdir
from os.path import isfile, join
import time
watch_directory = '/Users/alexanderh/watch_folder'
pollTime = 10
def list_files(path):
return [f for f in listdir(path) if isfile(join(path, f))]
def listComparison(OriginalList: list, NewList: list):
differencesList = [x for x in NewList if x not in OriginalList]
return differencesList
def fileWatcher(watch_directory: str, pollTime: int):
while True:
if 'watching' not in locals():
previousFileList = list_files(watch_directory)
watching = True
print('First Time')
print(previousFileList)
time.sleep(pollTime)
newFileList = list_files(watch_directory)
fileDiff = listComparison(previousFileList, newFileList)
previousFileList = newFileList
if len(fileDiff) == 0:
continue
notify_new_files(fileDiff)
def notify_new_files(fileDiff: list):
print(fileDiff)
# print(list_files('/Users/alexanderh/ahosking_git/python-tools'))
fileWatcher(watch_directory, pollTime)