昨天有需求需要用python脚本删除一个目录下的文件。遇到了点麻烦。
使用的是shutil.rmtree(dir)函数,这个函数可以删除有内容的目录,而shutil.rmdir(dir)只能删除空目录。
1、一删除就报错,最后怀疑是账户权限问题,更改了账户的权限以后,可以删除部分文件了,但还是有文件不可以删除
2、在网上查到可能是因为文件属性的问题,果真删不掉的文件都是只读的。如果想删除这些文件需要先修改其属性。
shutil模块是没有类似函数的,于是自己仿照shutil.rmtree函数写了一个,在删除文件之前就先os.chmod(file, stat.S_IWRITE)一下就好啦。
记得是要import os, sys, stat 才行的。
python用的不多,不过一些权限问题确实折腾了一会儿才弄明白。