簡體   English   中英

Python:刪除特定年齡的文件

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM