Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Cách thay đổi permission thư mục bằng Python?


Trên platform có lệnh chmod, gọi như sau:

>>> import subprocess
>>> subprocess.call(['chmod', '-R', '+w', 'my_folder'])

Muốn dùng module os, phải viết đệ quy:

import os
def change_permissions_recursive(path, mode):
    for root, dirs, files in os.walk(path, topdown=False):
        for dir in [os.path.join(root, d) for d in dirs]:
            os.chmod(dir, mode)
        for file in [os.path.join(root, f) for f in files]:
            os.chmod(file, mode)

change_permissions_recursive('my_folder', 0o777)

Sẽ đổi permission my_folder, tất cả file và subfolder thành 0o777.