无法使用python删除临时文件

时间:2013-05-17 16:21:19

标签: python linux django

我正在使用django视图,我使用tempfile.gettempdir()创建了一个temp_dir。

我在那里写了一个gzip压缩文本文件,然后将文件scp到别处。当这些任务完成后,我尝试删除temp_dir。

 if os.path.exists( temp_dir ):
      shutil.rmtree( temp_dir )

然而,偶尔我会收到此错误:

 Operation not permitted: '/tmp/.ICE-unix'

任何想法,这个错误意味着什么以及如何最好地处理这种情况?

3 个答案:

答案 0 :(得分:1)

tempfile.gettempdir()不会创建临时目录 - 它会返回系统的standand tmp目录。不要删除它!那会把每个人的临时档案都吹走。您可以删除在temp目录中创建的文件,也可以创建自己的临时目录,但不要单独使用。

答案 1 :(得分:0)

temp_dir的值取自OS环境变量,显然其他一些进程也使用它来创建文件。另一个文件可能正在使用/锁定,这将阻止您删除它。 问:什么是/tmp/.ICE-unix? 答:它是保存X-windows会话信息的目录。

答案 2 :(得分:-1)

我不是专家但是尝试运行python程序或者你作为管理员使用它做什么然后它很可能允许这个过程完成...