【问题标题】:Powershell - rename folder in C:\Windows\Powershell - 重命名 C:\Windows\ 中的文件夹
【发布时间】:2017-06-09 07:43:30
【问题描述】:

我需要一些帮助。我需要重命名 c:\Windows\ 中的几个文件夹,但它一直说访问被拒绝。我正在以管理员身份运行 poweshell。

Rename-Item -path 'C:\Windows\SoftwareDistribution' -NewName 'C:\Windows\SoftwareDistribution.bak'

我得到回报:

Rename-Item : Access to the path 'C:\Windows\SoftwareDistribution' is denied.
At line:1 char:2
+  Rename-Item -path 'C:\Windows\SoftwareDistribution' -NewName 'C:\Win ...
+  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : WriteError: (C:\Windows\SoftwareDistribution:String) [Rename-Item], IOException
    + FullyQualifiedErrorId : RenameItemIOError,Microsoft.PowerShell.Commands.RenameItemCommand

【问题讨论】:

  • 访问被拒绝。由于 UAC,非管理员用户十多年来一直无法写入 Windows 文件夹。走出 1990 年代,进入现代世界。
  • @Ken:在 Windows NT 上,非管理员用户永远无法写入 Windows 文件夹。因此更像是 2½ 个十年。
  • @Joey:是的,那将是十多年
  • @Ken:但不是因为 UAC。

标签: windows powershell directory powershell-2.0 powershell-3.0


【解决方案1】:

我猜您是以许可管理员的身份运行此 cmdlet。 (UAC) 您必须以管理员身份启动您的 powershell 控制台。 (以管理员身份登录是不够的。)

【讨论】:

  • 我以管理员身份运行 PowerShell。
  • 我自己试过了。我使用本地管理员组成员的帐户登录。如果我只是启动 powershell 控制台(控制台的标题是“Windows PowerShell”)并运行您的命令,我会收到相同的错误。如果我“以管理员身份”启动 Powershell 控制台,则控制台的标题是“管理员:Windows PowerShell”。如果我现在运行命令它是成功的。
【解决方案2】:

我遇到了完全相同的问题:

Rename-Item -Path PATH1 -NewName PATH2 

给了我一个IOException。我尝试了较旧的REN 命令,但无论如何它都别名为Rename-Item 并且也不起作用。

对我有用的唯一解决方案是在文件资源管理器中重命名它。

【讨论】:

    【解决方案3】:

    一种可能性只是权限问题,显然我们可以排除。

    另一种可能的解释是,一个进程仍然持有该文件夹或其中的文件的打开句柄,很可能是 Windows 更新。您必须先停止 Windows 更新服务。

    【讨论】:

    • 我愿意。我正在运行一个处理服务的脚本
    【解决方案4】:

    也尝试使用 -Force 开关,只要您在其中运行 cmdlet 的 PowerShell 会话应该没有任何问题。

    【讨论】:

      【解决方案5】:

      我认为错误的重要部分是它说 IOException:

      + CategoryInfo          : WriteError: (C:\Windows\SoftwareDistribution:String) [Rename-Item], IOException
      

      检查文件夹是否未被使用,以防万一。

      【讨论】:

        【解决方案6】:

        我以前也遇到过同样的问题。您需要确保该目录没有在任何命令提示符下打开,并且您需要关闭 wuauserv 服务。

        您还可以在此线程中使用 Svish 答案在 Windows 资源监视器中查找文件夹锁定。 https://superuser.com/questions/117902/find-out-which-process-is-locking-a-file-or-folder-in-windows

        【讨论】:

          【解决方案7】:

          您需要关闭文件资源管理器和 IDE 文件,然后才能使用 Rename-Item PATH1 -NewName PATH2

          【讨论】:

            猜你喜欢
            • 2014-04-04
            • 2017-12-10
            • 1970-01-01
            • 1970-01-01
            • 2015-12-03
            • 1970-01-01
            • 2011-10-21
            • 2021-04-13
            • 2012-09-03
            相关资源
            最近更新 更多