删除目录中与Python中的正则表达式匹配的所有文件

时间:2018-06-20 21:39:03

标签: python

我在目录home / documents /中有两个文件,分别名为2018-06-rs.csv000和2018-06-rs.csv001。我想从目录中删除这两个文件。

以下是我的代码:

import datetime
import os

now = datetime.datetime.now()
file_date = now.strftime("%Y-%m")

os.remove("/home/documents/"+file_date+"-rs.csv*") 

我得到的错误是:

OSError: [Errno 2] No such file or directory: '/home/documents/201806-rs.csv*'

列出上面的路径虽然指向实际文件。

ls /home/documents/201806-rs.csv*

感谢任何反馈。

1 个答案:

答案 0 :(得分:0)

尝试一下:

import os, re

def purge(dir, pattern):
    for f in os.listdir(dir):
        if re.search(pattern, f):
            os.remove(os.path.join(dir, f))

确保dir是包含文件的目录的正确路径,并且pattern是有效的正则表达式。