python祛除win系统文件只读属性

'''
用于祛除win系统的文件只读属性.
先进cmd运行这行命令:
cd "C:\Program Files" & dir /b /n /o /s >> "C:\Users\%USERNAME%\Desktop\list.txt"
注意把"C:\Program Files"这个路径换成你想要祛除只读属性的文件夹,不要少了双引号.
然后cmd里运行代码:
python cancelRead.py
提示:
windows文件夹右键属性上的只读属性那个框框永远都是实心方块,不用管,那是windows系统的文件夹就是这样设计的.
'''
import os
import stat

def remove_readonly(path):
    # 获取文件当前的权限
    file_status = os.stat(path)
    # 去除只读属性
    os.chmod(path, file_status.st_mode & ~stat.S_IREAD)

def process_file_list(file_list_path):
    # 打开文件列表文件
    with open(file_list_path, 'r') as file:
        # 逐行读取文件路径
        for line in file:
            # 去除行尾的换行符
            file_path = line.strip()
            # 检查文件路径是否非空
            if file_path:
                try:
                    # 尝试取消只读属性
                    remove_readonly(file_path)
                    print(f"已移除只读属性Removed readonly attribute from: {file_path}")
                except Exception as e:
                    print(f"移除只读属性失败Failed to remove readonly attribute from {file_path}. Error: {e}")

# 替换为你的文件列表文件路径
file_list_path = "C:\Users\%USERNAME%\Desktop\list.txt"
process_file_list(file_list_path)

 

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注