无法使用PowerShell删除网络驱动器上的目录

时间:2016-12-16 19:27:42

标签: powershell

我已经构建了一个脚本,可以从AD,Exchange,Lync等中删除用户。在脚本的末尾,它会删除用户的profile-folder和home-directory。问题是,只有被删除的用户具有配置文件夹的完全控制权,因此我需要删除带有他/她的凭据的文件夹。

首先我尝试了这个:

Remove-Item -Path \\networkdrive\share$\profilefolder -Recurse -Force -Credential $UsersCredentials

但我收到以下错误:

  

Remove-Item:无法检索cmdlet的动态参数。 FileSystem提供程序仅支持New-PSDrive cmdlet上的凭据。无需指定凭据即可再次执行操作。

然后我尝试使用New-PSDrive cmdlet:

New-PSDrive -Name F -PSProvider FileSystem -Root \\networkdrive\share$\profilefolder -Credential $UsersCredentials

我收到以下错误:

  

New-PSDrive:不允许同一用户使用多个用户名与服务器或共享资源建立多个连接。断开与服务器或共享资源的所有先前连接,然后重试

我在某处读到使用IP地址连接到网络驱动器可能会解决上面的错误,但是当我尝试这个时,我收到了一个新错误:

  

New-PSDrive:指定的网络密码不正确

你对我能做什么有什么建议吗?我的目标是使用被删除人员的凭据来删除文件夹。我的下一步是下载NetApp PowerShell cmdlet,看看我是否可以删除这些目录。

编辑:我决定不尝试使用其他凭据删除该文件夹,而是取得所有权,然后删除该文件夹。我试过了:

takeown /F \\server\share\folder /A /R /D y

但是我收到了以下错误:

SUCCESS: The file (or folder): "\\server\share\folder" now owned by the administrators group.

接受: 在行:1个字符:1 + takeown / F \ server \ share \ folder / A / R / D y + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~ + CategoryInfo:NotSpecified:(:String)[],RemoteException + FullyQualifiedErrorId:NativeCommandError

错误:传递给系统调用的数据区域太小。

因此,出于某种原因,我似乎无法取得所有权。有什么建议我可以从这里开始吗?

1 个答案:

答案 0 :(得分:0)

Remove-Item -Path \networkdrive\share`$\profilefolder -Recurse -Force-Credential $UsersCredentials

使用反引号(`)退出路径中的$