我正确编码了这个powershell吗?因为它不符合我的意图

Ric*_*ear 1 powershell sharepoint-2010

需要从名为"Region"的字段名称中找出文档集名称.我需要将文档集名称设置为Region(NW,SW,NE,SE等),并将文件从文档库的根目录移动到其受尊重的文档集.我不介意对网站或网址和doc lib网址进行硬编码.我发现这个错误:

','之后缺少表达式.在C:\ PS\MoveFiles.ps1:13 char:59 + $ list.Items.MoveTo($ destinationFolderUrl + $ file.Name,<<<< true); + CategoryInfo:ParserError :(,:String)[],ParseException + FullyQualifiedErrorId:MissingExpressionAfterToken

#Setup default variables
$webUrl = Get-SPWeb -Identity "http://CiscoIntranet/sites/VOIP"
$list = $webUrl.GetList("http://CiscoIntranet/sites/VOIP/ForwardTech")
[System.Reflection.Assembly]::LoadWithPartialName(”Microsoft.SharePoint”) 

function ProcessMove {
   param($folderUrl)
   $folder = $web.GetFolder($folderUrl)
        foreach ($file in $folder.Files)
            {   
                $docset=$($file.Region);
                $destinationFolderUrl = "http://CiscoIntranet/sites/VOIP/ForwardTech/" + $docset;
                $list.Items.MoveTo($destinationFolderUrl + $file.Name, true);
                $webUrl.Update();
            }
}
Run Code Online (Sandbox Code Playgroud)

man*_*lds 5

第二个参数应该是$true而不仅仅是真的.

我复制了同样的错误如下:

function fun($m,[bool]$f) {
      write-host $m $f
}

fun ("blah", true)
Run Code Online (Sandbox Code Playgroud)

奇怪的是,像:

function fun([bool]$f) {
      write-host $m $f
}
fun (true)
Run Code Online (Sandbox Code Playgroud)

给出一个错误:

fun:无法处理参数'f'上的参数变换.无法将值"System.Management.Automation.PSCustomObject"转换为"System.Boolean"类型,此类型的参数仅接受布尔值或数字,而使用$ true,$ false,1或0代替.

这是更具描述性的解决方案在错误消息中!