【问题标题】:rm -rf doesnt clean the directory completelyrm -rf 不完全清理目录
【发布时间】:2014-05-19 21:13:31
【问题描述】:

首先,这是一个windows系统,不是linux。 在我拥有的 makefile 中,我正在做 make clean

rm -rf output

但是,第一次运行时,它会给出类似的错误

rm: cannot lstat `foo.txt': Permission denied

即使执行命令后目录输出完全为空。现在,如果我第二次运行该命令,

rm -rf output

成功删除output。关于为什么它第一次没有工作的任何想法?并且文件 foo.txt 没有在任何地方打开。

【问题讨论】:

    标签: windows makefile file-permissions permission-denied rm


    【解决方案1】:

    不幸的是,Windows 是这里的问题。

    我假设你在 CygWin 中运行,并且在后台有一些东西阻碍了你。有太多的可能性可以计算:

    • 杀毒软件?
    • 回收站?
    • 应用体验引擎?

    对于 Bugzilla 人来说,这一直是一个长期存在的错误,请查看 bug 545015.. 他们通过以下方式解决了它:

    1. 在本地组策略编辑器中: 本地计算机策略 -> 计算机配置 -> 管理模板 -> Windows 组件 -> 应用程序兼容性

    选择关闭应用程序兼容性引擎 在设置选项卡下选择启用 选择关闭程序兼容性助手 在设置选项卡下选择启用

    1. 关闭文件索引和应用体验服务。

    2. 重启。

    【讨论】:

    • 通常的解决方法(对我来说一直很成功)是发出两次删除命令。我从未见过第二次删除操作失败 - 尽管我直接在 Windows 中而不是通过 Cygwin 工作。
    猜你喜欢
    • 1970-01-01
    • 2011-02-28
    • 1970-01-01
    • 2012-10-05
    • 2021-04-09
    • 2019-03-08
    • 2016-07-09
    • 1970-01-01
    • 2017-03-09
    相关资源
    最近更新 更多