Get-SPSite

返回符合指定条件的所有网站集。

语法

Get-SPSite
   [-Identity] <SPSitePipeBind>
   [-AssignmentCollection <SPAssignmentCollection>]
   [-CompatibilityLevel <Int32>]
   [-Confirm]
   [-Filter <ScriptBlock>]
   [-Limit <String>]
   [-Regex]
   [-WhatIf]
   [<CommonParameters>]
Get-SPSite
   -ContentDatabase <SPContentDatabasePipeBind>
   [-AssignmentCollection <SPAssignmentCollection>]
   [-CompatibilityLevel <Int32>]
   [-Confirm]
   [-Filter <ScriptBlock>]
   [-Limit <String>]
   [-WhatIf]
   [-NeedsB2BUpgrade]
   [<CommonParameters>]
Get-SPSite
   -SiteSubscription <SPSiteSubscriptionPipeBind>
   [-AssignmentCollection <SPAssignmentCollection>]
   [-CompatibilityLevel <Int32>]
   [-Confirm]
   [-Filter <ScriptBlock>]
   [-Limit <String>]
   [-WhatIf]
   [<CommonParameters>]
Get-SPSite
   [-AssignmentCollection <SPAssignmentCollection>]
   [-CompatibilityLevel <Int32>]
   [-Confirm]
   [-Filter <ScriptBlock>]
   [-Limit <String>]
   [-WebApplication <SPWebApplicationPipeBind>]
   [-WhatIf]
   [<CommonParameters>]

说明

此 cmdlet 包含多个参数集。 您可以只使用来自一个参数集的参数,也可以不合并来自不同参数集的参数。 若要详细了解如何使用参数集,请参阅 Cmdlet 参数集

Get-SPSite cmdlet 返回一个与 Identity 参数匹配的网站,或所有与指定范围的 Filter 参数匹配的网站。 这些范围包括 WebApplication、ContentDatabase 和 SiteSubscription 参数。 如果未提供上述任何范围,则范围为服务器场。 如果指定的范围不带 Filter 参数,则返回该范围中的所有网站。

Identity 参数支持提供以通配符 (*) 结尾的部分 URL。 将返回与指定范围的此部分 URL 匹配的所有网站集。 此外,如果提供了 Regex 参数,则将 Identity 参数视为正则表达式,并返回带有给定范围内提供的 URL 的任何网站集。

Filter 参数是存储在内容数据库中的某些网站集属性的服务器端筛选器;如果没有 Filter 参数,对这些属性的筛选将是一个缓慢的过程。 这些网站集属性为 Owner、SecondaryOwner 和 LockState。 Filter 参数是使用与 Where-Object 语句相同语法的脚本块,但它在服务器上运行以便更快获得结果。

LockState 的有效值包括:Unlock、NoAdditions、ReadOnly 和 NoAccess。

需要注意的是,Get-SPSite cmdlet 返回的每个网站集都在管道结束时自动释放。 若要在局部变量中存储 Get-SPSite 的结果,必须使用 Start-SPAssignment 和 Stop-SPAssignment cmdlet 来避免内存泄漏。

有关适用于 SharePoint 产品的 Windows PowerShell 的权限和最新信息,请参阅 SharePoint Server cmdlet

示例

------------------示例 1---------------------

Get-SPSite 'https://<site name>' | Get-SPWeb -Limit All | Select Title

此示例获取网站集中子网站标题的集合,<https:// 网站名称>。

------------------示例 2---------------------

Get-SPSite -ContentDatabase "b399a366-d899-4cff-8a9b-8c0594ee755f" | Format-Table -Property Url, Owner, SecondaryOwner

此示例获取内容数据库 b399a366-d899-4cff-8a9b-8c0594ee755f 中所有网站的数据子集。

------------------示例 3---------------------

Start-SPAssignment -Global

$s = Get-SPSite -Identity https://<MyApp>/Sites/Site1

$s.Url

Stop-SPAssignment -Global

此示例获取由 Identity 参数指定的网站,并将结果插入到变量 s 中。

上一示例使用分配集合的 Global 方法。 Global 方法使用简单,但此对象的内容会快速增加。 请注意不要运行 Get-SPSite 命令,在启用全局分配时,该命令会返回大量结果。

------------------示例 4---------------------

$GC = Start-SPAssignment
$Sites = $GC | Get-SPSite -Filter {$_.Owner -eq "DOMAIN\JDow"} -Limit 50
Stop-SPAssignment $GC

此示例使用服务器端查询,获取用户 DOMAIN\JDow 拥有的前 50 个网站,并将其分配给局部变量。

此命令使用高级分配集合方法。

------------------示例 5---------------------

Get-SPWebApplication https://<site name> | Get-SPSite -Limit All |ForEach-Object {$sum=0}{ $sum+=$_.Usage.Storage }{$sum}

此示例显示的命令返回给定 Web 应用程序中所有网站的磁盘空间使用总量。

------------------示例 6---------------------

Get-SPSite -Identity "https://localserver/(my|personal)/sites" -Regex

此示例返回与给定正则表达式匹配的所有网站。

当使用 Regex 参数时,需要用引号将 Identity 参数引起来。

------------------示例 7---------------------

Get-SPSite https://<site name>/sites/teams/* -Limit 100

此示例最多获取 URL 下的 100 个网站 https://sitename/sites/teams.

------------------示例 8---------------------

Get-SPSite | select url, @{Expression={$_.Usage.Storage}}

此示例通过使用 .UsageInfo 属性的存储字段来获取网站集使用的存储量。

------------------EXAMPLE 9---------------------

Get-SPSite -Limit all -CompatibilityLevel 14

此示例返回所有 SharePoint Server 模式网站集。

参数

-AssignmentCollection

管理对象以便正确进行处理。 使用 SPWeb 或 SPSite 等对象可能会耗用大量内存,而且在 Windows PowerShell 脚本中使用这些对象需要正确管理内存。 通过使用 SPAssignment 对象,可以将对象分配给变量,然后在不需要这些对象时对它们进行处理,以释放内存。 在使用 SPWeb、SPSite 或 SPSiteAdministration 对象时,如果不使用分配集合或 Global 参数,则会自动处理这些对象。

在使用 Global 参数时,所有对象均包含在全局存储中。 如果未立即使用对象,或未通过使用 Stop-SPAssignment 命令来处理对象,则可能会发生内存不足的情况。

Type:SPAssignmentCollection
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False
Applies to:SharePoint Server 2010, SharePoint Server 2013, SharePoint Server 2016, SharePoint Server 2019

-CompatibilityLevel

指定创建新 SPSite 对象时要使用的模板版本。 该值设置网站集的初始 CompatibilityLevel 值。 此参数的值可以是 SharePoint Server 或 SharePoint Server。 如果未指定此参数,则 CompatibilityLevel 将默认为 Web 应用程序最高可能的版本,具体取决于 SiteCreationMode 设置。

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:SharePoint Server 2010, SharePoint Server 2013, SharePoint Server 2016, SharePoint Server 2019

-Confirm

执行命令前,看到确认提示。 有关详细信息,请键入以下命令:get-help about_commonparameters

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:SharePoint Server 2010, SharePoint Server 2013, SharePoint Server 2016, SharePoint Server 2019

-ContentDatabase

指定从中列出网站集的内容数据库的 GUID。

键入的值必须是有效数据库名称(格式为 SPContentDB01)或有效 GUID(如 12345678-90ab-cdef-1234-567890bcdefgh)。

Type:SPContentDatabasePipeBind
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False
Applies to:SharePoint Server 2010, SharePoint Server 2013, SharePoint Server 2016, SharePoint Server 2019

-Filter

指定要应用的服务器端筛选器脚本块。

类型必须是有效的筛选器名称和值,格式为 {$_PropertyName <运算符> “filterValue”}。

有效操作符包括:EQ、NE、LIKE 和 NOTLIKE。

Type:ScriptBlock
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:SharePoint Server 2010, SharePoint Server 2013, SharePoint Server 2016, SharePoint Server 2019

-Identity

指定要获取的网站集的 URL 或 GUID。

键入的值必须是有效 URL(格式为 https://server_name 或 https://server_name/sites/sitename)或有效 GUID(如 12345678-90ab-cdef-1234-567890bcdefgh)。

Type:SPSitePipeBind
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False
Applies to:SharePoint Server 2010, SharePoint Server 2013, SharePoint Server 2016, SharePoint Server 2019

-Limit

限制要返回的网站集的最大数目。 默认值为 200。

键入的值必须为有效非负数。 指定 ALL 将返回给定范围的所有网站集。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:SharePoint Server 2010, SharePoint Server 2013, SharePoint Server 2016, SharePoint Server 2019

-NeedsB2BUpgrade

指定站点是否需要升级。

有效值为 True 和 False。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:SharePoint Server 2016, SharePoint Server 2019

-Regex

如果使用此参数,则将为 Identity 参数提供的 URL 视为正则表达式。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:SharePoint Server 2010, SharePoint Server 2013, SharePoint Server 2016, SharePoint Server 2019

-SiteSubscription

指定要从其获取网站集的网站订阅。

键入的值必须是 https://server_name 形式的有效 URL,或有效 GUID(如 12345678-90ab-cdef-1234-567890bcdefgh)。

Type:SPSiteSubscriptionPipeBind
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False
Applies to:SharePoint Server 2010, SharePoint Server 2013, SharePoint Server 2016, SharePoint Server 2019

-WebApplication

指定从其列出网站的 Web 应用程序的 URL、GUID 或名称。

键入的值必须是有效的 URL(格式为 https://server_name);有效的 GUID(如 12345678-90ab-cdef-1234-567890bcdefgh);或者是 Web 应用程序名称(如 WebApplication1212)。

Type:SPWebApplicationPipeBind
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False
Applies to:SharePoint Server 2010, SharePoint Server 2013, SharePoint Server 2016, SharePoint Server 2019

-WhatIf

显示一条描述命令作用的消息,而不执行命令。 有关详细信息,请键入以下命令:get-help about_commonparameters

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:SharePoint Server 2010, SharePoint Server 2013, SharePoint Server 2016, SharePoint Server 2019