搜索并输入找到PowerShell右键管理员身份运行打开。
安装PNP(如果已安装过,可升级或者卸载后重新安装最新版)
重要:(eg.因为之前的是经典版本现在已经不维护了。以前经典版本是SharePointPnPPowerShellOnline ,现在新版是PnP.PowerShell)
a.运行此命令,看是否已安装新版。
(a1.如果不存在,请下载参考b步骤;
a2.如果版本号不是这个,请更新参考c步骤更新到最新;
a3.如果是老版本,请参考e步骤。)
命令:Get-InstalledModule -Name "PnP.PowerShell"
b.下载安装新版PNP
命令:Install-Module PnP.PowerShell
需要等待安装完成。
c.更新新版本到最新版
命令:Update-Module -Name "PnP.PowerShell"
d.卸载老版本,并下载安装新版本
d1>卸载旧版 SharePointPnPPowerShellOnline 模块,先检查是否安装了经典的模块:如果为空就是没有,不为空就是存在或者未安装。
命令:Get-Module SharePointPnPPowerShellOnline-ListAvailable | Select-Object Name,Version
d2>卸载以前安装的任何适用于SharePoint 的 PnP模块:
命令:Uninstall-Module SharePointPnPPowerShellOnline -Force -AllVersions
注册新的 Azure AD 应用程序并向租户授予访问权限
命令:Register-PnPManagementShellAccess
这一步是授予租户对 PnP 命令行管理程序多租户 Azure AD 应用程序的访问权限。执行上述 cmdlet 时,系统将提示你登录并为租户提供同意。必须使用全局管理员(或租户管理员)权限登录并完成此步骤。
如果你不是全局管理员,请使用命令:Register-PnPManagementShellAccess -ShowConsentUrl 并与租户管理员共享从此 cmdlet 获取的 URL,他们可以从你共享的 URL 完成此同意步骤。
注意如果以上没有权限,请联系有关管理员调整权限。
eg.以上授权使用连接命令也可弹出:
命令:
Connect-PnPOnline -url https://dynamicschina.sharepoint.com/sites/DemoCollection -PnPManagementShell
使用 PnP PowerShell 连接 SharePoint Online 网站(以上配置好后操作)
命令:(蓝色https链接,是SharePoint的站点地址,进入对应站点,地址栏中复制即可,例如我的站点地址是https://dynamicschina.sharepoint.com/sites/DemoCollection)
Connect-PnPOnline -url https://dynamicschina.sharepoint.com/sites/DemoCollection -PnPManagementShell
输入确认之后,会有一个警告,然后复制https://microsoft.com/devicelogin地址到浏览器中open。
复制警告中的code,输入进去,点击next。(每个电脑不一样,不要输入我的)
然后选择有权限的账户登录。(这一步很重要,权限不够是不能使用的)
可选择保持登录(continue),然后就可以了。
连接成功,下一步需要导出SharePoint文件xml
命令:(E:\myfile1.xml 是导出文件存放的位置)
Get-PnPSiteTemplate -Out E:\myfile1.xml
如果需要下载指定版本(如果上面已经升级了,该步骤无需再做)
命令:Install-Module -Name PnP.PowerShell -RequiredVersion 1.6.0
具体指定版本 参考网址:PowerShell Gallery | PnP.PowerShell 1.5.0
导入SharePoint不同模板处理(如果上面已经升级了,该步骤无需再做)
参考:PowerShell 的 SharePoint Online 网站模板 ID 列表 - Vlad Talks Tech
如遇到错误如下图所示警告 STS#3 与 STS#0或者GROUP#0需要创建指定版本id的SharePoint站点,需要处理:
解决方法:a.需要通过powershell来创建指定模板的SharePoint站点
命令:New-PnPTenantSite -Title Contoso -Url https://dynamicschina.sharepoint.com/sites/contoso -Owner yan.ding@dynamicschina.onmicrosoft.com -TimeZone 4 -Template STS#3
参考网站:
修改字段属性(List字段加索引)
#-url 后的地址填写成正式环境的站点地址
Connect-PnPOnline -url https://nnit.sharepoint.com/sites/SonovaContractManagement -Interactive
Set-PnPField -List "Task" -Identity FlowTerm -Values @{Indexed=$TRUE}
Set-PnPField -List "Task" -Identity ParentID -Values @{Indexed=$TRUE}
Set-PnPField -List "Task" -Identity TaskOrder -Values @{Indexed=$TRUE}
Set-PnPField -List "Task" -Identity TaskType -Values @{Indexed=$TRUE}
结束
eg.如果有问题可随时联系。