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.
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?
