Get-SPUesr:您必须指定有效的用户对象或用户标识

时间:2017-02-16 04:35:39

标签: powershell csv sharepoint

我尝试使用PowerShell将CSV文件复制到SharePoint 2010列表中。但是,当我尝试将用户名导入人员选择器字段时,我收到错误:

  

Get-SPUser:您必须指定有效的用户对象或用户身份

这是我使用的powershell:

$Item["Assigned To"] = Get-SPUser -Identity $i."AssignedTo"  -web "http://.../"

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

$ i。" AssignedTo"看起来像?

Identity参数需要有效的登录名(DOMAIN \ username)。

编辑:鉴于AssignedTo字段包含用户名和姓,您可以查询/ _catalogs / users列表以获取站点中用户的ID(假设名字和姓氏与FullName字段匹配)列表)然后使用该ID来查找用户。

这样的事情可以解决问题:

$web = get-spweb http://.../
$query = new-object microsoft.sharepoint.SPQuery
$query.Query = [string]::Format("<Where><Eq><FieldRef Name='Title' /><Value Type='Text'>{0}</Value></Eq></Where>", $i."AssignedTo")
$list = $web.GetList("/sites/dev/_catalogs/users")
$items = $list.GetItems($query)
$i = $items[0]
$id = $i.Id

$user = $web.AllUsers.GetById($id)

$Item["Assigned To"] = $user