3

Windows マシンでは、次のように、Python の os モジュールを使用してファイルのモードを取得しようとしています (短いスニペット):

import os
from stat import *

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

ファイルのモードの例は 33206 です。

私の質問は、どうすればそれを linux-file モード方式に変換できますか? (たとえば、666)。

すべての返信者に感謝します!

編集:

ここで私の答えを見つけました:)このトピックをさらに理解したいすべての人のために:

stat 関数の出力からのファイル モード値の理解とデコード

4

2 に答える 2

3

これが正しく変換されるかどうかを確認します。

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

ここから取りました。詳しい説明を読む

于 2016-12-22T09:55:58.477 に答える
0

1 つの回避策は、使用することos.system(r'attrib –h –s d:\your_file.txt') です: 属性スイッチを使用できる場所: R – このコマンドは、選択したファイルまたはフォルダーに「読み取り専用」属性を割り当てます。H – このコマンドは、選択したファイルまたはフォルダーに「非表示」属性を割り当てます。A – このコマンドは、選択したファイルまたはフォルダーを「アーカイブ」用に準備します。S – このコマンドは、「システム」属性を割り当てることにより、選択したファイルまたはフォルダーを変更します。

于 2016-12-22T09:51:18.790 に答える