1
我正在製作一個軟件,用於檢測是否將新文件從虛擬機實例上傳到Google Cloud Platform的存儲區存儲中。命名圖像的文件目錄是由該命令在Ubuntu 16.04中檢測與外部雲存儲同步的目錄中的文件更改LTS
gcsfuse cloud-storage-bucket ~/mystuff/images
當文件被上傳到存儲桶保管安裝使用雲存儲保險絲桶,該文件也將出現在images目錄。我使用Python的看門狗包如果創建
# -*- coding: utf-8 -*-
#!/bin/bash
import time
import TextDetector
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
DIR="~/mystuff/images"
class ExampleHandler(FileSystemEventHandler):
def on_created(self, event): # when file is created
# do something, eg. call your function to process the image
print("Got event for file %s" % event.src_path)
TextDetector.detect_text(event.src_path)
observer = Observer()
event_handler = ExampleHandler() # create event handler
# set observer to use created handler in directory
observer.schedule(event_handler, path=DIR)
observer.start()
# sleep until keyboard interrupt, then stop + rejoin the observer
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop()
observer.join()
的問題是看門狗,即使有在images目錄每次我上傳的東西在桶時創建一個新的文件,沒有檢測到任何新的文件,以檢測存儲。我也試過使用inotify,但結果也是一樣的。當我在Windows平臺上本地嘗試時,代碼運行時沒有任何問題。我對Ubuntu實際上很新。任何人都可以幫我解決這個問題嗎?
謝謝您的建議。我對這個平臺很陌生,所以我仍然不熟悉很多功能。我會嘗試探索更多的選擇。 –