【发布时间】:2014-09-12 18:02:11
【问题描述】:
我有以下脚本,我需要在运行 PS 2.0 的服务器上运行...我已经在我的本地计算机 PS 3.0 上对其进行了测试,它运行良好....但是,当我在服务器上运行它时(2008 R2) 我在 ($folder in (Get-ChildItem -Directory $sourceFolder)) 上收到一个错误,说 -Directory 是意外的……但仅在服务器上。
是我的脚本有问题还是其他问题?
Set-ExecutionPolicy -Scope "CurrentUser" -ExecutionPolicy "Unrestricted"
$sourceFolder = "server1\a\b\c"
$destFolder = "server2\a\b\c"
New-Item -Path "$destFolder\Log" -ItemType Directory | Out-Null
foreach ($folder in (Get-ChildItem -Directory $sourceFolder)) {
"robocopy `"$($sourceFolder)\$($folder)\zArchive\Data files to Nov 13`" `"$($destFolder)\$($folder)\Data files to Nov 13`" /E /MOVE /DCOPY:T /log+:`"$($destFolder)\Log\log.log`"" | Out-File zArchiveMove.txt -Append
"robocopy `"$($sourceFolder)\$($folder)\Data files to Nov 13`" `"$($destFolder)\$($folder)\Data files to Nov 13`" /E /MOVE /DCOPY:T /log+:`"$($destFolder)\Log\log.log`"" | Out-File zArchiveMove2.txt -Append
}
【问题讨论】:
-
我找不到任何对它的引用,但使用 v2.0,似乎没有
-directory参数。使用 v4.0 有所以我假设参数已经添加到 v3.0 中。 -
嗯好的...你知道 -Directory 的 v2.0 替代品是什么吗???
-
你可以使用this question的答案。
标签: powershell powershell-2.0 powershell-3.0