Búsqueda de sitios web

SharePoint Online: obtener configuración de lista mediante PowerShell


Requisito: Obtener la configuración de la lista de SharePoint Online mediante PowerShell.

¿Cómo obtener propiedades de lista en SharePoint Online?

Para obtener propiedades de la lista, como Título de la lista, Descripción, Configuración de versiones, Requerir pago, etc., puede dirigirse a la página de configuración de la Lista.

SharePoint Online: PowerShell para obtener propiedades de lista

Puede obtener las propiedades de la lista de una lista de SharePoint Online utilizando este script de PowerShell. Todo lo que necesita hacer es abrir PowerShell y conectarse a su sitio de SharePoint Online. Luego, use el siguiente script para obtener las propiedades de la lista:


#Load SharePoint CSOM Assemblies
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll"
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"
   
#Config Parameters
$SiteURL= "https://crescent.sharepoint.com"
$ListName="Projects"
 
#Setup Credentials to connect
$Cred = Get-Credential
$Cred = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.UserName,$Cred.Password)
 
Try {
    #Setup the context
    $Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL)
    $Ctx.Credentials = $Cred
   
    #Get the List
    $List=$Ctx.Web.Lists.GetByTitle($ListName)
    $Ctx.Load($List)
    $Ctx.ExecuteQuery()
  
    #Get List Properties: Title, Description
    Write-host -f Yellow "---  General Settings ---"
    Write-host "List Title:" $List.Title
    Write-host "List Description:" $List.Description
    #Write-host "Show in Quick Launch:" $List.OnQuickLaunch

    Write-host -f Yellow "--- Versioning settings ---"
    Write-host "Content Approval Enabled:" $List.EnableModeration
    Write-host "Versioning Enabled:" $List.EnableVersioning
    Write-host "Major Versions Limit:" $List.MajorVersionLimit
    #Write-host "Minor Versions Enabled:" $List.EnableMinorVersions
    Write-host "Minor Versions Limit:" $List.MajorWithMinorVersionsLimit        
    Write-host "Draft Versions Security:" $List.DraftVersionVisibility
    Write-host "Require Checkout:" $List.ForceCheckout  #In Document Libraries

    Write-host -f Yellow "--- Advanced settings ---"
    Write-host "Content Type Enabled:"$List.ContentTypesEnabled
    Write-host "Attachments Enabled:"$List.EnableAttachments
    Write-host "New Folders Command Available:"$List.EnableFolderCreation
    Write-host "No Crawl Flag:"$List.NoCrawl
    #Write-host "Offline Availability:"$List.ExcludeFromOfflineClient
    Write-host "List Experience:"$List.ListExperienceOptions
    
    #Other hidden Settings
    Write-host -f Yellow "--- Other settings ---"
    Write-host "List ID:"$List.ID
    Write-host "List Created On:"$List.Created
    Write-host "Last Item Deleted On:"$List.LastItemDeletedDate 
    Write-host "Last Item Modified On:"$List.LastItemModifiedDate
    Write-host "List Item Count:"$List.ItemCount
    Write-host "Is Hidden List:"$List.Hidden
    Write-host "Document Template:"$List.DocumentTemplateUrl #In Document Libraries
    Write-host "List Type:"$List.BaseType   
    
}
Catch {
    write-host -f Red "Error Getting List Properties!" $_.Exception.Message
}

Utilice este script para obtener todas las propiedades de la lista:


$List | select -Property *

Este comando devolverá una lista de todas las propiedades de la lista. Tenga en cuenta que no todas las propiedades de la lista se pueden recuperar o configurar a través de CSOM. Aquí está el resumen para recuperar todas las propiedades disponibles de una lista o biblioteca de SharePoint Online:


$List | Select -Property ([Microsoft.SharePoint.Client.List].GetProperties().Where({$_.Propertytype -notlike "*Collection"})).Name

Hemos filtrado las propiedades de la colección porque cualquier colección debe cargarse explícitamente primero y luego se puede acceder a ella.

Para obtener todos los métodos y propiedades disponibles para un objeto Lista, puede usar el Explorador de cliente de SharePoint Online o este código de PowerShell: $List | Obtener miembro

PnP PowerShell para obtener propiedades de lista

Otro método consiste en utilizar el cmdlet Get-PnPList. Primero debe conectarse a SharePoint Online mediante el cmdlet Connect-PnPOnline para usar este cmdlet. Una vez que se haya conectado, puede ejecutar el cmdlet Get-PnPList y especificar el nombre de la lista sobre la que desea obtener información.

PnP PowerShell se puede usar para recuperar propiedades de la lista, incluida la URL, el título, la descripción, el recuento de elementos, etc. Por ejemplo, para obtener la cantidad de elementos en una lista, use el comando Get-PnPList -Identity | Seleccione Recuento de elementos. Asegúrese de reemplazarlo con el nombre real de la lista.


#Set Parameters
$SiteURL = "https://crescent.sharepoint.com/sites/Marketing"
$ListName = "Announcements"

#Connect to SharePoint Online site
Connect-PnPOnline -Url $SiteURL -Interactive

#Get List
$List = Get-PnPList -Identity $ListName

#Get List Properties
Write-host "Versioning Enabled:"$List.EnableVersioning

Para obtener cualquier propiedad del tipo "colección", utilice el parámetro "incluye". P.ej.,


#Get the List with "Author" property
$List = Get-PnPList -Identity $ListName -Includes Author
Invoke-PnPQuery

#Get the Login ID of the user created the List
Write-host "List Author:"$List.Author.LoginName

Para actualizar la configuración de la lista en SharePoint Online usando PowerShell, use: ¿Cómo actualizar la configuración de la lista de SharePoint Online usando PowerShell?

Artículos relacionados