【问题标题】:Hidden file attributes隐藏文件属性
【发布时间】:2012-10-09 04:45:51
【问题描述】:

在 Python 中,如何隐藏特定文件?或者如何在不使用外部 API/模块(如 WIN32API 等)的情况下将文件属性设置为“隐藏”。

标准库中肯定有一些东西吗?由于os 模块确实允许设置“读取”和“写入”属性,所以很奇怪os 文档中没有提及“隐藏”...

【问题讨论】:

    标签: python attributes


    【解决方案1】:

    使用

    fn = 'c:\\file.txt'
    p = os.popen('attrib +h ' + fn)
    t = p.read()
    p.close()
    

    【讨论】:

    • 解释为什么这回答了这个问题将使它成为一个更好的答案。
    • 其实我在网上也看到过这个类似的代码但是不行,我还以为是语法错误所以又试了一遍,还是不行
    • @ChrisF:这个答案展示了如何使用标准的 windows shell 命令来隐藏文件 (attrib)。如果 OP 正在寻找特定于 Windows 的解决方案,则此答案与问题完全匹配。 (不幸的是,OP 没有说明他是在寻找便携式解决方案还是特定于 Windows 的解决方案)。
    【解决方案2】:

    并非所有操作系统都有文件“隐藏”的概念,而且大多数(即使是所有不同版本的 Windows 7 等)还有更多形式*nix 比 Windows)通过将文件名的第一个字符作为句点(.)来表示它。在确实支持它的操作系统上,您必须使用一些外部 API 或工具才能在文件上设置它。

    【讨论】:

    • 我知道文件名前面的初始点的使用适用于 unix/linux 操作系统;但 OS 模块专门处理许多其他 Windows 特定文件属性。我真的很惊讶 HIDDEN 属性访问是/可能没有提供。
    • 那么除了win32api没有别的选择了吗?
    • 你可以用 ctypes 编写你自己的绑定,但它仍然会调用相同的函数。
    猜你喜欢
    • 1970-01-01
    • 2011-08-12
    • 1970-01-01
    • 2013-03-15
    • 2012-11-21
    • 2018-07-15
    • 2023-03-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多