Delete All SharePoint List Items using PowerShell

    When working with the SharePoint Online list, there are many ways to delete a single item or all list items, like manually or programmatically.

    In the SharePoint tutorial, I will show you how to delete a single list item in SharePoint using PnP PowerShell and how to delete all list items in SharePoint list using PnP PowerShell.

    Also, I will discuss how to get all list items in SharePoint using PnP PowerShell and how to get a single list item in SharePoint using PnP PowerShell with real-time examples.

    SharePoint Online PnP Delete List Item

    In PowerShell, the commands Remove-PnPListItem or Move-PnPListItem ToRecycleBin are used for deleting list items within the SharePoint Online list. To execute the PowerShell script, you can use an editor such as “Visual Studio Code.”

    Syntax of the Remove-PnPListItem command:

    Remove-PnPListItem [-List] <ListPipeBind> -Identity <ListItemPipeBind> [-Recycle] [-Force] 

    Where,

    • List = Provide the list name where you want to delete the item
    • Identity = It is the ID of the list item or actual ListItem object
    • Recycle = SharePoint list, deleted items stored in the recycle bin

    Example:

    I have a SharePoint Online list named “Expense Tracker” that has some records or items. Now, I would like to delete the third item [ID = 3] using PnP PowerShell.

    pnp delete list item

    For that, use the PowerShell command below to delete a single list item in SharePoint with the parameters List, Identity, and Force.

    Connect-PnPOnline -Url https://szg52.sharepoint.com/sites/Marketing
    
    Remove-PnPListItem -List "Expense Tracker" -Identity "3" -Force
    remove pnplistitem

    Now, execute the above command by clicking the RUN button. Then, you will see the details of deleting a single Sharepoint list item in the TERMINAL, as shown below.

    delete sharepoint site powershell

    Finally, The specific SharePoint list item [Item with ID number 3] was deleted, as shown below.

    sharepoint powershell delete list

    Syntax of the Move-PnPListItem ToRecycleBin command:

    Move-PnPListItemToRecycleBin [-List] <ListPipeBind> -Identity <ListItemPipeBind> [-Force] 
     [-Connection <PnPConnection>] 

    Example:

    Similarly, in this example, I will show you how to delete the third item [ID = 3] using the PnPListItemToRecycleBin command. Follow the code below.

    Connect-PnPOnline -Url https://szg52.sharepoint.com/sites/Marketing
    
    Move-PnPListItemToRecycleBin -List "Expense Tracker" -Identity "8" -Force

    Then, execute the above command by clicking the RUN button. Then, you will see the details of deleting a single Sharepoint list item in the TERMINAL, as shown below.

    delete item powershell

    Finally, have a look at the below screenshot for the output.

    delete-item powershell

    This is how we can delete a single list item in SharePoint using PowerShell.

    Delete All SharePoint List Items using PnP PowerShell

    In this example, I have taken the Remove-PnPListItem command with the Batch parameter in the ForEach loop to delete all list items in SharePoint.

    Also, I have used the Invoke-PnPBatch command to send the batch request to the SharePoint server. Follow the code below.

    Connect-PnPOnline -Url "https://szg52.sharepoint.com/sites/Marketing"
    $ListName = "Expense Tracker"
    $ListItems =  Get-PnPListItem -List $ListName -PageSize 500
    
    #Clear All Items in the List
    ForEach($Item in $ListItems)
    {   
         Remove-PnPListItem -List $ListName -Identity $Item.ID -Recycle -Batch $Batch
    }
     
    #Send Batch request to the server
    Invoke-PnPBatch -Batch $Batch

    Then, execute the above command by clicking the RUN button. Then, you will see the details of deleting all Sharepoint list items in the TERMINAL, as shown below.

    delete all items from sharepoint list

    Now, have a look at the below screenshot for the output.

    Output:

    delete all items in sharepoint list

    This is how we can delete or remove all list items in SharePoint using PnP PowerShell

    SharePoint Online Get-PnP List Items

    In this section, I will explain how to get all list items in SharePoint using PnP PowerShell.

    In PowerShell, the Get-PnPListItem command is used to get all items from the SharePoint list. Also, we can use parameters to specify the list, fields, page size, script block, content type, include, and connection while getting items from the SharePoint list.

    Syntax of the Get-PnP List Items:

    Get-PnPListItem [-List] <ListPipeBind> 
      [-Fields <String[]>]
      [-PageSize <Int32>]
      [-ScriptBlock <ScriptBlock>]
      [-IncludeContentType <SwitchParameter>]
      [-Connection <PnPConnection>]

    Where,

    • Get-PnPListItem = This command is used to retrieve items from the SharePoint list
    • List = This parameter specifies the SharePoint list from which you want to get items. You can provide a list name or GUID here
    • Fields = This is an optional parameter. You can specify the column names to retrieve items or provide an array of column names
    • PageSize = It is an optional parameter. You can specify the number of items to get per page. Use this parameter when you have more items in the SharePoint list
    • ScriptBlock = This parameter is optional. It can be used to filter the items and perform custom processing, such as formatting
    • IncludeContentType = We can use an optional parameter to get the content type of each item
    • Connection = This optional parameter allows you to specify the PnP connection. It is useful when working with multiple connections

    Example:

    I have a SharePoint Online list named “Vacation Budget” that has some records or items.

    Input:

    get-pnplistitem pagesize

    Now, I would like to get all these SharePoint list items using PnP PowerShell. For that, you can use the Get-PnP List Items command and provide the SharePoint Site URL and List name, as shown below.

    Connect-PnPOnline -Url "https://szg52.sharepoint.com/sites/Marketing"
    Get-PnPListItem -List "Vacation Budget"
    get pnplistitem

    Then, execute the above command by clicking the RUN button. Then, you will get all Sharepoint list items in the TERMINAL, as shown below.

    get-pnplistitem where-object

    This is how we can get all Sharepoint list items using PnP PowerShell.

    How to Get-PnP SharePoint List Item

    In the last, I will show you how to get the specific SharePoint list item using PnP PowerShell.

    Example:

    Suppose you want to get the first [Item ID is = 1] item from the SharePoint Online list [Vacation Budget] using PnP PowerShell; you can use the code below.

    Connect-PnPOnline -Url "https://szg52.sharepoint.com/sites/Marketing"
    Get-PnPListItem -List "Vacation Budget" -Id 1

    Once, execute the above command by clicking the RUN button. Then, you will get the specific Sharepoint list item in the TERMINAL, as shown below.

    get-pnplistitem the attempted operation is prohibited because it exceeds the list view threshold

    This way, we can work with how to get the specific SharePoint list item using PnP PowerShell.

    I hope this SharePoint tutorial is useful. If you have any requirements related to how to delete all list items in SharePoint using PnP PowerShell or how to get all list items in SharePoint using PnP PowerShell, you can follow the above examples to achieve them.

    You may also like:

    comment_count comments
    Oldest
    Newest
    Oldest

    Comment as a guest:

    >