chenx306 发表于 2021-7-3 16:39:20

用python删除被占用的文件

我打开程序以后 会在c盘生成一个DB文件
我想在不关闭程序的情况下 删除这个文件
但提示文件被进程占用,无法删除
我使用360文件粉碎可以删除
求用python代码删除这个文件
求大神帮助

永恒的蓝色梦想 发表于 2021-7-3 16:44:51

建议直接放弃

南归 发表于 2021-7-3 16:52:55

可能吗?原理不是强制关闭然后删除?

wsw530 发表于 2021-7-3 17:03:06

这里可以给你个思路
之前有遇到过文件占用提示无法删除,
这个时候不借助其他软件工具强制删除,
第一步,任务管理器=》性能=》然后打开资源管理器=》cpu
根据文件名,搜索关联的句柄
会找到占用当前文件的进程,会获得对应的进程号,也就是PID
然后使用系统命令kill 杀掉PID对应进程,
再去删除文件,就可以成功了

要是实现这个功能,你需要对使用的操作系统对应的命令有所了解才可以
甚至可以直接通过写一下bat或者sh脚本就可以实现这个功能了!

chenx306 发表于 2021-7-3 17:06:31

wsw530 发表于 2021-7-3 17:03
这里可以给你个思路
之前有遇到过文件占用提示无法删除,
这个时候不借助其他软件工具强制删除,


我的前提是不关闭进程啊

chenx306 发表于 2021-7-3 17:07:23

南归 发表于 2021-7-3 16:52
可能吗?原理不是强制关闭然后删除?

360的文件粉碎可以做到不关闭进程删除文件

chenx306 发表于 2021-7-3 17:08:17

永恒的蓝色梦想 发表于 2021-7-3 16:44
建议直接放弃

每次都用360的文件粉碎器一点都不智能啊

wsw530 发表于 2021-7-3 17:13:36

chenx306 发表于 2021-7-3 17:07
360的文件粉碎可以做到不关闭进程删除文件

因为系统有文件保护措施, 想要不结束占用文件进程而执行删除操作
基本是不可能实现的

wp231957 发表于 2021-7-3 18:27:53

wsw530 发表于 2021-7-3 17:13
因为系统有文件保护措施, 想要不结束占用文件进程而执行删除操作
基本是不可能实现的

能,进0环,括号我不会括号完毕

阿奇_o 发表于 2021-7-3 23:04:08

两个问题:
1. 你打开了什么程序,从而生成了这个db文件?
2. 真的有必要删它吗?删了不会影响你打开的那个程序吗?或那个程序自己不会再次生成吗?

先搞清楚这两个问题,你再考虑 如何用脚本去“粉碎”它。。

Kayko 发表于 2021-7-6 20:48:41

学到了
页: [1]
查看完整版本: 用python删除被占用的文件