【发布时间】:2019-07-08 18:32:29
【问题描述】:
我有以下文件:
/tmp/test_glob/client.log.71.gz
/tmp/test_glob/client.log.63.gz
/tmp/test_glob/client.log.11
/tmp/test_glob/core_dump.log
/tmp/test_glob/client.log.32
/tmp/test_glob/dm.log
/tmp/test_glob/client.log
/tmp/test_glob/client.log.1
/tmp/test_glob/client.log.64.gz
我想获取所有 .log 文件,但以 .gz 结尾的文件除外。 期望的结果应该如下:
/tmp/test_glob/client.log.11
/tmp/test_glob/core_dump.log
/tmp/test_glob/client.log.32
/tmp/test_glob/dm.log
/tmp/test_glob/client.log
/tmp/test_glob/client.log.1
我写了这个简单的代码:
import glob
import os
glob_pattern = u'*.log*'
for log_path in glob.glob(os.path.join('/tmp/test_glob', glob_pattern)):
print('log_path: ', log_path)
但它会返回文件夹 /tmp/test_glob/ 中的所有文件
我试着像这样修改这个模式:
glob_pattern = u'*.log.[0-9][0-9]'
但它只返回
/tmp/test_glob/client.log.11
/tmp/test_glob/client.log.32
如何修复这种模式?
【问题讨论】: