Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

จะเปลี่ยนการอนุญาตของไดเร็กทอรีโดยใช้ Python ได้อย่างไร?


บนแพลตฟอร์มที่มีคำสั่ง chmod คุณสามารถเรียกคำสั่ง chmod ดังนี้:

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

หากคุณต้องการใช้โมดูลระบบปฏิบัติการ คุณจะต้องเขียนซ้ำ:

Using os:
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)

สิ่งนี้จะเปลี่ยนการอนุญาตของ my_folder ไฟล์และโฟลเดอร์ย่อยทั้งหมดเป็น 0o777