列出使用托管元数据的sharepoint 2010网站

时间:2018-03-13 19:54:39

标签: sharepoint-2010 metadata powershell-v4.0

以下是这种情况: 我们有390个网站集,我们想知道他们是否使用托管元数据,因为此authum正在进行迁移。

如果他们这样做,我们不知道他们会使用什么术语等。

Googeling,我找不到如何解决这个问题。

我认为这可以通过Powershell完成。 这是一个Sharepoint 2010农场。

我需要的是基本的:

网址:托管的MetaData https:test.com/sites/test是的 https:test.com/sites/tes2否

如果使用PowerShell执行此操作,我们会在脚本读取的.txt文件中列出网站列表,因为存在超过20000个网站集,我们只对390感兴趣。

任何做过此事的人都可以提供一些链接或帮助吗?

2 个答案:

答案 0 :(得分:0)

迭代每个网站集,您应该找到这样的script

答案 1 :(得分:0)

我是如何做到的,隐藏列表,“TaxonomyHiddenList”包含项目,如果网站使用它,所以我制作了一个脚本,看看是否有任何,并根据使用输出中的true或false。

Add-PSSnapin "Microsoft.SharePoint.PowerShell" -erroraction silentlycontinue

$sites = Get-Content sites.txt $listname = "TaxonomyHiddenList" $result = [System.Collections.ArrayList]@()

if(!(Test-Path ".\hiddenlist.csv")) {
    "Site;ListItem" | Out-File -FilePath ".\hiddenlist.csv" }

foreach ($site in $sites) {
    $subsites = ((Get-SPWeb $site).Site).allwebs | Where-Object {$_.url -like "$site*"}

    foreach($subsite in $subsites)
    {
        $web = Get-SPWeb $site
        $list1 = $web.Lists | where{$_.Title -eq $listname}

        if($list1.ItemCount -gt 0)
        {
            $result.Add("$($subsite.Url);true")
        }
        else
        {
            $result.Add("$($subsite.Url);false")
        }
    } }

$result | Out-File -FilePath ".\hiddenlist.csv" -Append