如何使用Python更改文件的权限?
可以操作文件的用户是通过文件权限进行管理的。当更改文件权限时,对文件的读取、写入和执行权限进行修改。
本文将介绍如何在Python中更改文件权限。
使用os.chmod()方法
要修改文件的权限,请使用os.chmod()方法。
语法
os.chmod()方法的语法如下:
os.chmod(path, mode)
其中, path 表示文件的路径, mode 包含如下不同的值。
此方法没有返回值。
Os.chmod()模式
os.chmod()的不同模式参数如下。
- stat.S_ISUID − 在执行时,设置组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 − 其他人执行
示例-1
以下是更改文件权限的示例。
import os
import sys
import stat
# 将给定文件设置为仅由所有者读取。
os.chmod("C:\Users\Lenovo\Downloads\Work TP\trial.py", stat.S_IREAD)
print("该文件只能由所有者阅读")
# 将给定文件设置为组读取。
os.chmod("C:\Users\Lenovo\Downloads\Work TP\trial.py", stat.S_IRGRP )
print("文件访问权限已更改,现在可以由组阅读。")
以下是上述代码的输出。
该文件只能由所有者阅读
文件访问权限已更改,现在可以由组阅读。
示例-2
以下是更改文件权限的示例。
import os
import sys
import stat
# 将给定的文件读取、写入、执行权限授予组。
os.chmod("C:\Users\Lenovo\Downloads\Work TP\trial.py", stat.S_IRWXG )
print("该文件可以被组读取、写入和执行"
# 将给定的文件读取、写入、执行权限授予其他人。
os.chmod("C:\Users\Lenovo\Downloads\Work TP\trial.py", stat.S_IRWXO )
print("文件访问权限已更改,现在其他人可以读、写和执行它。")
输出
下面是上面代码的输出结果 −
该文件可以被组读取、写入和执行
文件访问权限已更改,现在其他人可以读、写和执行它。
在Linux系统中使用
我们可以使用 subprocess.call() 函数在Linux中更改文件或目录的权限。Python的subprocess包含一个call()方法,该方法用于启动应用程序。
例子
下面是使用subprocess.call()方法更改文件权限的一个例子 −
import subprocess
subprocess.call(['chmod', '0444', 'myFile.txt'])
输出
输出结果将显示文件的权限已更改。
极客教程