代码之家  ›  专栏  ›  技术社区  ›  XDS

用于删除以“.”开头的文件夹的Powershell脚本无效-为什么?

  •  2
  • XDS  · 技术社区  · 6 年前

    我编写了一个简单的powershell脚本,用于删除特定文件夹:

    gci -include .vs -recurse | remove-item -force -recurse
    

    但是,不会删除.vs文件夹(如果删除了点,则名为“vs”的文件夹会很好地删除)。我一定错过了什么。

    $PSVersionTable.PSVersion
    

    汇报:

    Major  Minor  Build  Revision
    -----  -----  -----  --------
    5      1      16299  666
    

    我通过“文件管理器”右键单击运行脚本->运行Powershell脚本“”。不知道这是否会使脚本在最新和最好的powershell版本下运行。

    事实证明,罪魁祸首是.vs文件夹被标记为“只读”。由于某些原因,即使确实指定了“-force”标志,powershell脚本也无法删除它。对此有什么办法吗?

    1 回复  |  直到 6 年前
        1
  •  4
  •   mklement0    6 年前

    你在评论中提到 要删除的目录同时具有 Hidden ReadOnly 文件系统属性集 .

    虽然 -Force Remove-Item 呼叫 能够强制移除具有 只读 你的 输入 Get-ChildItem -强迫 太多了,否则就找不到了 文件和文件夹 所以 删除项目 也从未见过他们:

    # Note the -Force added to Get-ChildItem.
    Get-ChildItem -Force -Include .vs -Recurse | Remove-Item -Force -Recurse -WhatIf