[英]Python: Deleting files of a certain age
所以目前我正在嘗試刪除目錄中列出的1分鍾舊文件,我將在腳本工作后更改該值。
下面的代碼返回錯誤: AttributeError: 'str' object has no attribute 'mtime'
import time
import os
#from path import path
seven_days_ago = time.time() - 60
folder = '/home/rv/Desktop/test'
for somefile in os.listdir(folder):
if int(somefile.mtime) < seven_days_ago:
somefile.remove()
import time
import os
one_minute_ago = time.time() - 60
folder = '/home/rv/Desktop/test'
os.chdir(folder)
for somefile in os.listdir('.'):
st=os.stat(somefile)
mtime=st.st_mtime
if mtime < one_minute_ago:
print('remove %s'%somefile)
# os.unlink(somefile) # uncomment only if you are sure
那是因為somefile
是一個字符串,一個相對文件名。 你需要做的是構造文件的完整路徑(即絕對路徑),你可以用os.path.join
函數做,並將它傳遞給os.stat
,返回值將有一個屬性st_mtime
將包含所需的整數值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.