ファイルモードのディレクトリをbashのmkdirとpythonのos.mkdirで作成しました。 異なる権限を持つディレクトリを作成しました。なぜ、bashのmkdirと違う、Pythonのos.mkdirによる許可を設定するのですか?
コマンドラインでの私のテストコードは以下の通りです、
$ mkdir -m 0775 aaa
$ cd aaa
$ mkdir -m 0777 bbb
$ python -c 'import os; os.mkdir("ccc",0o777)'
ディレクトリのパーミッション、AAA、BBB及びCCCは
directory aaa: drwxrwxr-x
directory bbb: drwxrwxrwx
directory ccc: drwxrwxr-x
以下の通りbashでMKDIRは許可を気にしないようです親ディレクトリのですが、Pythonのos.mkdirはそうです。そうですか? なぜ彼らは異なったメカニズムを持っていますか?
ありがとうございました。
-m, --mode=MODE
set file mode (as in chmod), not a=rwx - umask
Pythonは単に与えられたモードと通常のumaskの動作とmkdir(2)
システムコールを呼び出している:あなたにひそかマニュアルに記載のモードを、指定した場合
を私はバットオフ答えを知っているが、私は、Pythonを推測していることは、それ自身のumaskを使用していない...に見て何かと(DIS ) – amphibient