windows:python os.unlink引发OSError,[错误5]访问被拒绝

时间:2014-09-17 20:04:38

标签: python windows python-2.7 unlink

运行(由任务调度程序使用不同的用户帐户)Windows上的python脚本并尝试使用os.unlink删除文件,但得到[错误5]访问被拒绝异常。

try:
    os.unlink(file_path)
except OSError as error:
    logger.error('failed, error: {0}'.format(error))

2014-09-18 03:53:blind23 - 错误:[错误5]拒绝访问:u' C:\ path \ test.tgz'

4 个答案:

答案 0 :(得分:1)

此脚本由任务计划程序运行。有两种方法可以解决此问题:一种是将文件夹的完全控制权授予用户帐户,以便脚本能够删除文件;另一个是检查任务调度程序中的“以最高权限运行”。

答案 1 :(得分:1)

使用:

os.system('rmdir "%s"' % path_of_link_to_delete)

为我工作

答案 2 :(得分:0)

您可能没有以管理员身份运行脚本,右键单击cmd"以管理员身份运行#34;然后在那里打开脚本

答案 3 :(得分:0)

您似乎没有正确调用link()方法。首先,Python 2.x中的Windows不支持链接方法。您只能在3.2或更高版本中使用它。有关详细信息,请参阅以下内容:

如果您转到该链接,您会注意到您需要提供至少2个参数。你只提供一个。

您收到的错误消息听起来像权限问题。您可能需要以管理员身份运行脚本。该文件是否存在?如果没有,你将不得不创建它。另请注意,在Windows中,您必须转义反斜杠或使用Python的原始字符串(即 r'C:\ path \ to \ file')