Directory 在用户离开公司后将其Homefolders移动到存档

Directory 在用户离开公司后将其Homefolders移动到存档,directory,home-directory,Directory,Home Directory,嗨,我不是一个脚本编写者,但正在努力学习。试图找出为什么这个脚本不起作用,我在这里找到了它,但我无法确定如何解决它存在的问题 PS C:\windows> Param ( [array]$Users = @(Get-Content "C:\Temp\Users.txt"), [string]$oldserver = srvmanfiler [string]$Newserver = SrvmanArchive ) $Users | ForEach { Robocop

嗨,我不是一个脚本编写者,但正在努力学习。试图找出为什么这个脚本不起作用,我在这里找到了它,但我无法确定如何解决它存在的问题

PS C:\windows> Param (
    [array]$Users = @(Get-Content "C:\Temp\Users.txt"),
    [string]$oldserver = srvmanfiler
    [string]$Newserver = SrvmanArchive
)

$Users | ForEach { Robocopy "\\$oldserver\Users\Homedrives\$_" "\\$newserver\Archive\\Homedrives\" /COPY:DAT /v }
第3行字符:22 +[string]$oldserver=srvmanfiler + ~ “=”后缺少表达式。 第3行字符:20 +[string]$oldserver=srvmanfiler + ~ 函数参数列表中缺少“')。 第5行字符:1 + ) + ~ 表达式或语句中出现意外标记“)”。 +CategoryInfo:ParserError:(:)[],ParentContainerErrorRecordException +FullyQualifiedErrorId:MissingExpressionAfterToken


PS C:\windows>
在此处输入代码

修复了它现在执行我所需的操作,即使用SamAccount名称将文件夹移动到目标位置。完整语法为:

Param (
    [array]$Users = @(Get-Content "C:\Temp\Aliases.txt"),
    [string]$oldserver = "srvmanFiler",
    [string]$Newserver = "SrvmanArchive"
)

$Users | ForEach { Robocopy "\\$oldserver\Users\Homedrives\$_" "\\$newserver\Archive\\Homedrives\$_" /COPY:DAT /E  /Move  /V }

修复了我现在需要的功能,即使用SamAccount名称将文件夹移动到目标位置。完整语法为:

Param (
    [array]$Users = @(Get-Content "C:\Temp\Aliases.txt"),
    [string]$oldserver = "srvmanFiler",
    [string]$Newserver = "SrvmanArchive"
)

$Users | ForEach { Robocopy "\\$oldserver\Users\Homedrives\$_" "\\$newserver\Archive\\Homedrives\$_" /COPY:DAT /E  /Move  /V }