os.RemoveAll(path) 错误 the process cannot access the file

sourcelab · 2015-11-25 02:23:33 · 2904 次点击 · 大约8小时之前 开始浏览    置顶
这是一个创建于 2015-11-25 02:23:33 的主题,其中的信息可能已经有所发展或是发生改变。

想用golang 的 os.RemoveAll(path)删除某个文件夹下的所有文件, 结果提示: The process cannot access the file because it is being used by another process.

但是我要删除的那个文件夹就这个程序在用,而且删除操作放在了main的最开始处

我要完成的工作是, 每次程序启动时,删除固定路径文件夹下的所有日志文件

可是调用这个 RemoveAll 怎么都报错, 大家知道这个怎么解决吗?谢谢


有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

2904 次点击  
加入收藏 微博
5 回复  |  直到 2015-11-26 08:04:53
polaris
polaris · #1 · 9年之前

你这个文件夹是不是这个程序启动时候创建的?我在本地创建一个文件夹,然后用 RemoveAll 删除是没问题的。

sourcelab
sourcelab · #2 · 9年之前
polarispolaris #1 回复

你这个文件夹是不是这个程序启动时候创建的?我在本地创建一个文件夹,然后用 RemoveAll 删除是没问题的。

是linux架设的samaba服务器,然后映射一个目录到win上,在这个目录中运行golang程序去删除这个目录上的某个文件夹的所有内容, 路径也是对, 因为写入日志是可以的, 但是要删除则提示被占用。不知道为什么 ...

polaris
polaris · #3 · 9年之前

你这样映射,岂不是比 linux 那边占用了……

sourcelab
sourcelab · #4 · 9年之前
polarispolaris #3 回复

你这样映射,岂不是比 linux 那边占用了……

重启linux 可以删除了, 但是连文件夹一起删除了, 我不希望文件夹被删除, 怎么办呢?

polaris
polaris · #5 · 9年之前

那你删除文件,别删文件夹;或者删除文件夹后再创建一个文件夹

添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传