SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




Nach Dokumenten filtern

Unbeantwortet Dieser Beitrag hat 1 Antworten

Ohne Rang
125 Beiträge
Franke079 erstellt 29 Juli 2016 11:06
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo Zusammen,

ich möchte in allen Dokumentenbibliotheken nach Docx etc filtern und habe folgendes Script. Leider werden mir alle Items angezeigt, wie setzte ich einen Filter?

 

Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue

Function GetFiles($Folder)
{
   Write-Host "+"$Folder.Name

    foreach($file in $Folder.Files)
 { 
     Write-Host "`t" $file.Name
 }
  #Loop through all subfolders and call the function recursively
     foreach ($SubFolder in $Folder.SubFolders)
        {
      if($SubFolder.Name -ne "Forms")
      { 
       Write-Host "`t" -NoNewline
    GetFiles($Subfolder)
    
   }
  }
 }

#Get the Site collection
$Site= Get-SPSite http://sharepoint.de
       #Loop throuh all Sub Sites
       foreach($Web in $Site.AllWebs)
       {
     Write-Host "-----------------------------------------------------"
     Write-Host "Site Name: '$($web.Title)' at $($web.URL)"
  Write-Host "-----------------------------------------------------"
     foreach($list in $Web.Lists)
  {
     #Filter Doc Libs, Eliminate Hidden ones
   if(($List.BaseType -eq "DocumentLibrary") -and ($List.Hidden -eq $false))
      {
       GetFiles($List.RootFolder)
      }
  }
    }

Alle Antworten

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 31 Juli 2016 10:04
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

[quote user="Franke079"] foreach($file in $Folder.Files)
 { 
     Write-Host "`t" $file.Name
 }
[/quote]

Die Schleife geht ohne irgendeinen Filter über alle Dateien und genau da mußt Du ansetzen. Z.B. so
if ($file.Name.EndsWith(".docx")) {
Write-Host $file.Name
}

Viele Grüße
Andi
af @ evocom de
Blog