Shutil.move PermissionError: [WinError 82] 无法创建目录或文件,以及PermissionError: [Errno 13] Permission denied
1. 报错
File "shutil.py", line 566, in move
PermissionError: [WinError 82] 无法创建目录或文件。: 'G:\\Img\\images\\6311.jpg' -> 'G:\\Img\\images\\1615164827157.jpg'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "matchName.py", line 49, in <module>
File "shutil.py", line 580, in move
File "shutil.py", line 266, in copy2
File "shutil.py", line 121, in copyfile
PermissionError: [Errno 13] Permission denied: 'G:\\Img\\images\\1615164827157.jpg'
1.1 PermissionError: [WinError 82] 无法创建目录或文件。
排查发现:设备SD卡是FAT32文件系统,单目录下最大文件数2万~3万之间。
以下的代码可以跳过报错,但不能解决问题~
try:
shutil.move(srcFile, dstFile)
except WindowsError as e:
print(e)
pass
1.2 [Errno 13] Permission denied: …
某一博友的答案:是因为文件属性为只读的原因造成的。将文件的只读属性修改下,果然执行成功了。
并未验证~,可以通过os.close(image_path)
参考