Python3 os.chmod()方法

2019-10-16 23:08:16
chmod() 方法改變路徑的模式為數位模式。模式(mode)可採取以下值中的一個或按位元運算組合:
  • stat.S_ISUID: 在執行時設定使用者ID

  • stat.S_ISGID: 在執行時設定組ID

  • stat.S_ENFMT: 記錄鎖定執行

  • stat.S_ISVTX: 執行後儲存文字映象

  • stat.S_IREAD: 由所有者讀取

  • stat.S_IWRITE: 由所有者寫入

  • stat.S_IEXEC: 由所有者執行

  • stat.S_IRWXU: 由所有者讀取、寫入和執行

  • stat.S_IRUSR: 由所有者讀取

  • stat.S_IWUSR: 由所有者寫入

  • stat.S_IXUSR: 由所有者執行

  • stat.S_IRWXG: 由組寫讀、寫和執行

  • stat.S_IRGRP: 由組讀取

  • stat.S_IWGRP: 由組寫入

  • stat.S_IXGRP: 由組執行

  • stat.S_IRWXO: 由其他人寫讀、寫和執行

  • stat.S_IROTH: 由其他人讀取

  • stat.S_IWOTH: 由其他人寫入

  • stat.S_IXOTH: 由其他人執行

語法

以下是 chmod() 方法的語法:
os.chmod(path, mode)

引數

  • path -- 這是對於模式將要設定的路徑

  • mode -- 這可能需要上面的值中的一個或按位元運算組合

返回值

此方法不返回任何值。

注意:儘管Windows支援 chmod(),只能設定檔案的唯讀標誌(通過 stat.S_IWRITE 和 stat.S_IWRITE 常數或相應的整數值)。所有其他位被忽略。

範例

下面的範例說明 chmod() 方法的用法:
#!/usr/bin/python3

import os, sys, stat

# Assuming /tmp/foo.txt exists, Set a file execute by the group.

os.chmod("/tmp/foo.txt", stat.S_IXGRP)

# Set a file write by others.
os.chmod("/tmp/foo.txt", stat.S_IWOTH)

print ("Changed mode successfully!!")
當我們執行上面的程式,它會產生以下結果:
Changed mode successfully!!