捕获不同的 Sharepoint GUID

Catch different Sharepoint GUIDs

我编写了一个程序,它在我的计算机上映射来自 SP (O365) 的特定列表。 为了实现这一点,我使用了不同的 GUID (web, list, site).

我正在搜索以获取我需要的所有 GUID,而无需自己动手。 (_api/web 后url)

你有想法吗?非常感谢

param(
[string]$siteid='GUID',
[string]$webid='GUID',
[string]$URL='https://company.sharepoint.com/sites/group/',
[string]$listid='GUID',
[string]$webtitle='company'
)

$rand = Get-Random -Maximum 10
sleep $rand
#Sleep is required, if the same script runs at the same time it'll mess up the configuration.
$Version = Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion' -Name ReleaseID | Select-Object ReleaseID
if($version.releaseID -lt 1709) { break }

$strFilter = “(&(objectCategory=User)(SAMAccountName=$Env:USERNAME))”
$objDomain = New-Object System.DirectoryServices.DirectoryEntry
$objSearcher = New-Object System.DirectoryServices.DirectorySearcher
$objSearcher.SearchRoot = $objDomain
$objSearcher.PageSize = 1
$objSearcher.Filter = $strFilter
$objSearcher.SearchScope = “Subtree”
$objSearcher.PropertiesToLoad.Add(“userprincipalname”) | Out-Null
$colResults = $objSearcher.FindAll

$UPN =  (Get-ItemProperty -Path “HKLM:\SYSTEM\ControlSet001\Control\CloudDomainJoin\JoinInfo\*”).UserEmail
$path = "C:\Users$($env:username)\Lime Networks BV\Lime Networks - $($listtitle)"
if(Test-Path $path){
#DoNothing
} else {
start "odopen://sync/?siteId=$siteid&webId=$webid&listId=$listid&userEmail=$upn&webUrl=$URL&webtitle=$webtitle&listtitle=$listtitle" 
} 

导航到所需的 SharePoint 列表。 然后转到您的列表设置

将浏览器地址栏中的Url复制到记事本中。它看起来像: (https://yoursharepointintranet/yoursite/_layouts/15/listedit.aspx?List=%7B26534EF9%2DAB3A%2D46E0%2DAE56%2DEFF168BE562F%7D)

从 "List=" 回到 "https" 的第一个百分比字符之前删除每个。 将“%7B”更改为“{” 将所有“%2D”更改为“-” 将“%7D”更改为“}” 您现在只剩下 ID:

{26534EF9-AB3A-46E0-AE56-EFF168BE562F} 那就是你的 GUID。