繁体   English   中英

使用python glob忽略Windows隐藏文件

[英]Ignoring windows hidden files with python glob

我正在使用python脚本移动某些文件。 该脚本应同时在osx和Windows上运行。

我正在使用glob模块来选择文件。 使用os.path中的isfile方法过滤目录。 glob模块自动忽略unix。 文件,但似乎确实抓取了一些Windows隐藏文件。 我添加了代码,以删除似乎出现在Windows中的一个“ desktop.ini”。

是否还有其他Windows文件可能出现,或者有一种方法可以确保我不在Windows中选择隐藏文件?

files = glob.glob('*')
files = filter(os.path.isfile, files)  # filter out dirs
if "desktop.ini" in files : files.remove('desktop.ini')
# then using "shutil.move" to actually move the files

您可能需要尝试Formic

from formic import FileSet
fileset = FileSet(directory="/some/where/interesting",
              include="*.py",
              exclude=["desktop.ini", ".*", "addition", "globs", "here"]
              )
for filename in fileset:
    # use shutil to move them

这是一个使用Globs的Python库,但是i)已经了解大多数隐藏文件( 此处为内置列表),并且ii)允许您指定要从结果中排除的任何文件( 文档

披露:我是维护者。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM