我无法将文件夹的所有者从我的bat文件中重新设置回用户

以下bat文件正在用于修复组织中用户的权限。 一切工作完美,直到我们尝试将所有者设置回用户。

takeown /FF:\Users\First.Last /R icacls "F:\Users\First.Last" /grant:r system:(oi)(ci)f /t /c /Q icacls "F:\Users\First.Last" /grant:r "Group admins":(oi)(ci)f /t /c /Q icacls "F:\Users\First.Last" /grant:r "Domain admins":(oi)(ci)f /t /c /Q icacls "F:\Users\First.Last" /grant:r "CREATOR OWNER":(OI)(CI)F /T /C /Q icacls "F:\Users\First.Last" /grant:r First.Last:(oi)(ci)f /t /c /Q icacls "F:\Users\First.Last" /remove:g "everyone" /T /C /Q icacls "F:\Users\First.Last" /remove:g "administrators" /T /C /Q icacls "F:\Users\First.Last" /remove Everyone /T /C /Q icacls "F:\Users\First.Last" /setowner First.Last /c /t /Q 

这是在bat文件中不起作用的行。 将它键入命令提示符时,它工作得很好:

 icacls "F:\Users\First.Last" /setowner First.Last /c /t /Q 

在我的bat文件中不起作用。

有另一种方法可以将自己删除吗?

我从微软的网站上申请修复Fix201044,结果相同。

我很喜欢使用VBScript,PowerShell,Bat。

我不习惯安装需要重新启动或testing版软件的第三方软件。

在这里输入图像说明

 $HomeDir = "F:\Users\First.Last" $objUser = New-Object System.Security.Principal.NTAccount "DOMAIN\first.last" $ACL = Get-Acl -Path $HomeDir $acl.SetOwner($objUser) Set-ACL -Path $HomeDir -AclObject $ACL 

这应该为您使用Powershell设置所有权。 我假设这是在一个域环境