Метод Python os.chmod()
Методы работы с файлами/каталогами в Python OS
Обзор
Метод os.chmod() используется для изменения разрешений файла или каталога.
Синтаксис
chmod()Синтаксис метода следующий:
os.chmod(path, mode)
Parameters
path-- Путь к файлу или путь к каталогу.
flags-- Может быть сгенерирован с помощью побитовой операции ИЛИ следующих параметров. Разрешение на чтение каталога означает, что вы можете получить список имён файлов в каталоге. Разрешение на выполнение означает, что вы можете переключить рабочий каталог на этот каталог. Чтобы удалять или добавлять файлы в каталоге, у вас должны быть как разрешения на запись, так и на выполнение. Разрешения для файлов проверяются в порядке идентификатор пользователя -> идентификатор группы -> остальные. Применяется первое подходящее разрешающее или запрещающее разрешение.
- stat.S_IXOTH:Остальные пользователи имеют разрешение на выполнение 0o001
- stat.S_IWOTH:Остальные пользователи имеют разрешение на запись 0o002
- stat.S_IROTH:Остальные пользователи имеют разрешение на чтение 0o004
- stat.S_IRWXO:Остальные пользователи имеют все разрешения (маска разрешений) 0o007
- stat.S_IXGRP:Пользователи группы имеют разрешение на выполнение 0o010
- stat.S_IWGRP:Пользователи группы имеют разрешение на запись 0o020
- stat.S_IRGRP:Пользователи группы имеют разрешение на чтение 0o040
- stat.S_IRWXG:Пользователи группы имеют все разрешения (маска разрешений) 0o070
- stat.S_IXUSR:Владелец имеет разрешение на выполнение 0o100
- stat.S_IWUSR:Владелец имеет разрешение на запись 0o200
- stat.S_IRUSR:Владелец имеет разрешение на чтение 0o400
- stat.S_IRWXU:Владелец имеет все разрешения (маска разрешений) 0o700
- stat.S_ISVTX:Файлы/каталоги в каталоге могут быть удалены или изменены только владельцем 0o1000
- stat.S_ISGID:При выполнении этого файла эффективная группа процесса — группа файла 0o2000
- stat.S_ISUID:При выполнении этого файла эффективный пользователь процесса — владелец файла 0o4000
- stat.S_IREAD:Установить только для чтения в Windows
- stat.S_IWRITE:Отменить режим только для чтения в Windows
Возвращаемое значение
Этот метод не имеет возвращаемого значения.
Пример
Следующий пример демонстрирует использование метода chmod():
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import os, sys, stat
# 假定 /tmp/foo.txt 文件存在,设置文件可以通过用户组执行
os.chmod("/tmp/foo.txt", stat.S_IXGRP)
# 设置文件可以被其他用户写入
os.chmod("/tmp/foo.txt", stat.S_IWOTH)
print "修改成功!!"
Вывод вышеприведённой программы:
Modification successful!!Другие расширения