Python 的 lchown() 方法用于更改指定文件路径的 owner ID (UID) 和群组 ID (GID)。要保持其中一个 ID 不变,请将其设置为 -1。
UID 和 GID 是与系统中的每个用户和组关联的整数值。仅允许超级用户更改这些 ID。
语法
以下是 Python lchown() 方法的语法 -
os.lchown(path, uid, gid)
参数
Python lchown() 方法接受以下参数 -
- path - 这是需要设置所有权的文件路径。
- uid − 指定要为文件设置的 Owner ID。
- gid − 这是要为文件设置的组 ID。
返回值
Python lchown() 方法不返回任何值。
例以下示例显示了 lchown() 方法的用法。在这里,我们将更改单个文件的所有者 ID 和组 ID。
#!/usr/bin/python
import os, sys
# Open a file
path = "foo.txt"
fd = os.open( path, os.O_RDWR|os.O_CREAT )
# Close opened file
os.close( fd )
# Setting file owner ID
os.lchown( path, 500, -1)
# Set a file group ID
os.lchown( path, -1, 500)
print ("Ownership Changed Successfully!!")
当我们运行上述程序时,它会产生以下结果——
Ownership Changed Successfully!!
例
在以下示例中,我们使用 lchown() 方法一次更改多个文件的所有者 ID 和组 ID。
import os
# List of file paths
filePaths = ["txtFile.txt", "/home/TP/Python/tmp/new/monthly", "/home/TP/Python/tmp/"]
# setting UID and GID
user_id = 501
group_id = 21
# Changing ownership for each file
for path in filePaths:
os.lchown(path, user_id, group_id)
print("Ownership successfully changed")
在运行上述程序时,它会生成以下输出 -
Ownership successfully changed