我在路径\\Srv1011\User0$
(Active Directory)上的文件夹上有一个共享,我想用另一个名称\\Srv1011\User1$
重命名它,但它对我不起作用。
代码是:
Rename-Item -Path \\Srv1011\User0$ -NewName \\Srv1011\User1$
现在该文件夹上已启用共享,如果执行上述命令,则会出现此错误:
Rename-Item : Object reference not set to an instance of an object. At line:1 char:1 + Rename-Item -Path \\srv13577\User0$ -NewName \\srv13577\User1$ + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [Rename-Item], NullReferenceException + FullyQualifiedErrorId : System.NullReferenceException,Microsoft.PowerShell.Commands.RenameItemCommand
但如果我从文件夹中删除共享,我会收到以下错误:
Rename-Item : Cannot rename because item at '\\srv13577\User0$' does not exist. At line:1 char:1 + Rename-Item -Path \\srv13577\User0$ -NewName \\srv13577\User1$ + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (:) [Rename-Item], PSInvalidOperationException + FullyQualifiedErrorId : InvalidOperation,Microsoft.PowerShell.Commands.RenameItemCommand
现在我不知道如何重命名这样的文件夹。我最初的工作是删除共享,重命名文件夹并创建共享。 但是现在我不得不重命名。
答案 0 :(得分:1)
无法使用 rename-item cmdlet重命名共享文件夹。
相反,我建议您获取共享文件夹的内容,
然后使用新名称
创建一个新的共享文件夹然后将内容从旧内容移至新内容
最后删除源共享文件夹。
这将使你的工作变得轻松。
答案 1 :(得分:0)
解释你的误解:
您要实现的目标是重命名smb共享,(查看以\\
开头的路径)。 Rename-Item
无法以这种方式重命名共享。
您可能想要重命名该文件夹,该文件夹在服务器上的 User0 $ 下共享,或者您要对共享的名称进行转置。这是两种不同的行为。
当您取消共享文件夹并尝试重新命名时,无法找到它,因为 - 是的 - \\srv13577\User0$
下的共享不再存在了。这就是你的第二个错误出现的原因。