【问题标题】:Windows vs Linux file modesWindows 与 Linux 文件模式
【发布时间】:2016-12-22 09:32:58
【问题描述】:

在 Windows 机器上,我正在尝试使用 python 中的 os 模块获取文件的模式,如下所示(短 sn-p):

import os
from stat import *

file_stat = os.stat(path)
mode = file_stat[ST_MODE]

我为文件获取的模式示例是 33206。

我的问题是,如何将其转换为 linux-file 模式方法? (例如,666)。

感谢所有回复者!

编辑:

在这里找到了我的答案 :) 对于所有想要进一步了解这个主题的人:

understanding and decoding the file mode value from stat function output

【问题讨论】:

    标签: python file filesystems python-os


    【解决方案1】:

    检查翻译是否正确:

    import os
    import stat
    
    file_stat = os.stat(path)
    mode = file_stat[ST_MODE]
    print oct(stat.S_IMODE(mode))
    

    你的例子:

    >>>print oct(stat.S_IMODE(33206))
    0666
    

    Took it from here. Read for more explanation

    【讨论】:

    • 非常感谢!很大的帮助:)
    【解决方案2】:

    一种解决方法是使用:os.system(r'attrib –h –s d:\your_file.txt'),您可以在其中使用属性开关: R - 此命令将为您选择的文件或文件夹分配“只读”属性。 H - 此命令将为您选择的文件或文件夹分配“隐藏”属性。 A – 此命令将为“存档”准备您选择的文件或文件夹。 S - 此命令将通过分配“系统”属性来更改您选择的文件或文件夹。

    【讨论】:

    • 这与问题无关
    猜你喜欢
    • 1970-01-01
    • 2014-02-11
    • 1970-01-01
    • 2011-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-29
    • 1970-01-01
    相关资源
    最近更新 更多