2010-08-05 84 views
4

我對python比較新,但我試圖創建一個自動化進程,其中我的代碼將偵聽目錄中的新文件條目。例如,某人可以手動將zip文件複製到特定文件夾中,並且我希望我的代碼能夠在文件完全複製到文件夾後識別該文件。代碼然後可以做一些操作,但這是無關緊要的。我目前有我的代碼每5秒檢查一個新文件,但這對我來說似乎效率低下。有人可以建議更異步的東西嗎?Python:檢查新文件是否在文件夾中

+1

你在什麼操作系統上? – 2010-08-05 00:59:26

+1

退房http://stackoverflow.com/questions/3274334/how-can-i-watch-a-file-for-modification-change/3274366#3274366 – sdolan 2010-08-05 01:08:08

回答

2

每隔幾秒檢查一次新文件實際上並沒有那麼差 - 事實上,它是監視文件系統更改的唯一真正便攜的方式。如果您在Linux上運行,question linked by @sdolan中的答案將幫助您更有效地檢查新文件,但它們不會幫助您解決問題的其他部分。

檢測到文件已被完全複製比第一次出現要困難得多。最好的辦法是,當檢測到新文件時,請等待,直到它在處理之前還沒有被觸摸一段時間。等待期的長短最好通過實驗確定。這是一個平衡的行爲:使時間間隔太短,你冒着操作不完整的文件的風險;使其過長,並且用戶會注意到複製操作完成和您的代碼處理之間的延遲。

相關問題