SharePoint Online:如何使用 PowerShell 从文档库中删除文件?
要求:使用 PowerShell 从 SharePoint Online 文档库中删除文件。
如何删除 SharePoint Online 中的文件?
删除文件是您需要使用 SharePoint 执行的最常见任务之一。这篇博文将向您展示如何删除 SharePoint Online 中的文件。删除文件是一个简单的过程,只需几个步骤即可完成。我们将引导您完成整个过程,以便您可以快速轻松地删除文件。我们还将了解如何使用 PowerShell 删除 SharePoint Online 中的文件。
如何从 SharePoint Online 中删除文件?要从库中删除单个文档,请执行以下操作:
- 通过 Web 浏览器导航到 SharePoint Online 网站,然后导航到文档库。
- 选择要删除的文件,然后单击工具栏中的“删除”按钮。您还可以选择并删除多个文件!
单击确认弹出窗口中的“删除”按钮确认删除。
- 您还可以将鼠标悬停在要删除的文档上,然后从上下文菜单中单击“删除”。您会在文档库顶部看到一条通知,告诉您该项目已被删除。已删除的项目将移至 SharePoint 网站的回收站。
SharePoint Online:用于从文档库中删除文件的 PowerShell
如果您像我一样,您的 SharePoint Online 网站中可能有很多不再需要的文件。逐一删除这些文件确实很乏味,但使用 PowerShell,这很容易!这篇博文将向您展示如何使用 PowerShell 从 SharePoint Online 网站删除文件。让我们开始吧!
以下是使用 PowerShell 删除 SharePoint Online 文件的方法:
#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"
Function Remove-SPOFile()
{
param
(
[Parameter(Mandatory=$true)] [string] $SiteURL,
[Parameter(Mandatory=$true)] [string] $FileRelativeURL
)
Try {
#Get Credentials to connect
$Cred= Get-Credential
$Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.Username, $Cred.Password)
#Setup the context
$Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL)
$Ctx.Credentials = $Credentials
#Get the file to delete
$File = $Ctx.Web.GetFileByServerRelativeUrl($FileRelativeURL)
$Ctx.Load($File)
$Ctx.ExecuteQuery()
#Delete the file
$File.DeleteObject()
$Ctx.ExecuteQuery()
write-host -f Green "File has been deleted successfully!"
}
Catch {
write-host -f Red "Error deleting file !" $_.Exception.Message
}
}
#Set parameter values
$SiteURL="https://crescent.sharepoint.com/sites/Ops/"
$FileRelativeURL="/sites/Ops/Shared Documents/Investment Process.pptx"
#Call the function
Remove-SPOFile -SiteURL $SiteURL -FileRelativeURL $FileRelativeURL
该脚本从给定的 URL 中删除该文件。在某些情况下,您可能必须使用其项目 ID 来删除文件。下面是另一个脚本,用于在 SharePoint Online 中使用文档的项目 ID 删除文档。
使用 PowerShell 从 SharePoint Online 库中删除文件:
这次我们使用项目 ID 从 SharePoint Online 中删除文档。
#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"
Function Remove-SPOFile()
{
param
(
[Parameter(Mandatory=$true)] [string] $SiteURL,
[Parameter(Mandatory=$true)] [string] $LibraryName,
[Parameter(Mandatory=$true)] [string] $ItemID
)
Try {
#Get Credentials to connect
$Cred= Get-Credential
$Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.Username, $Cred.Password)
#Setup the context
$Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL)
$Ctx.Credentials = $Credentials
#Get the list by title
$List=$Ctx.web.Lists.GetByTitle($LibraryName)
#Get the item to delete by ID
$Item=$List.GetItemById($ItemID)
#Get the file to delete
$File=$Item.File
#Delete the file
$File.DeleteObject()
$Ctx.ExecuteQuery()
write-host -f Green "File has been deleted successfully!"
}
Catch {
write-host -f Red "Error deleting file !" $_.Exception.Message
}
}
#Set parameter values
$SiteURL="https://crescent.sharepoint.com/sites/Ops/"
$LibraryName="Documents"
$ItemID="16"
#Call the function
Remove-SPOFile -SiteURL $SiteURL -LibraryName $LibraryName -ItemID $ItemID
使用 PnP PowerShell 删除 SharePoint Online 中的文件
如果您正在寻找一种快速、简单的方法来从 SharePoint Online 删除文件,PowerShell 就是答案。让我向您展示如何使用 PnP PowerShell 从 SharePoint Online 删除文件。
让我们使用Remove-PnPFile cmdlet 删除SharePoint Online PowerShell 中的文件。要使用此 cmdlet,您首先需要使用 Connect-PnPOnline cmdlet 连接到 SharePoint Online 网站。连接后,您可以使用Remove-PnPFile cmdlet 删除该文件。 Remove-PnPFile cmdlet 将要删除的文件的服务器相对 URL 或站点相对 URL 作为其参数。 -force 参数是可选的,但如果包含它,它将删除该文件而不提示确认。
#Config Variables
$SiteURL = "https://Crescent.sharepoint.com/sites/marketing"
$FileRelativeURL ="/sites/Marketing/Shared Documents/Possible Deals.xlsx"
#Get Credentials to connect
$Cred = Get-Credential
Try {
#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Credentials $Cred
#Try to Get File
$File = Get-PnPFile -Url $FileRelativeURL -ErrorAction SilentlyContinue
If($File)
{
#Delete the File
Remove-PnPFile -ServerRelativeUrl $FileRelativeURL -Force
Write-Host -f Green "File $FileRelativeURL deleted successfully!"
}
Else
{
Write-Host -f Yellow "Could not Find File at $FileRelativeURL"
}
}
catch {
write-host "Error: $($_.Exception.Message)" -foregroundcolor Red
}
这将永久删除该文件。使用-Recycle开关将文件发送到回收站!若要从 SharePoint Online 文档库中删除所有文件,请使用:SharePoint Online:使用 PowerShell 从文档库中删除所有文件
无法删除 SharePoint 或 OneDrive 中的项目?
无法删除 SharePoint Online 中的文件或文件夹有一些根本原因:
- 您可能没有删除所需的权限!
- 文件可能会被其他用户签出 - 您必须先签入然后删除
- 可能会应用保留策略——阻止删除。例如,要删除文件夹,必须先删除该文件夹的所有内容
- 您的网站可能被锁定或达到最大存储限制
经常问的问题:
如何删除 Sharepoint Online 中的文件夹?
要删除 SharePoint 文件夹,请导航到要删除的文件夹或子文件夹,选择该文件夹,然后单击工具栏上的“删除”按钮。系统将提示您确认删除,确认后,该文件夹及其所有内容都将被删除。
更多信息:如何删除 SharePoint Online 中的文件夹?
如何恢复 SharePoint Online 中已删除的文件?
SharePoint Online 的内置回收站会将已删除的文件保留 93 天。要恢复已删除的文件,请转至站点设置>>站点内容。单击“回收站”(或使用“网站集管理”下的“回收站”链接)。使用文件夹旁边的复选框选择要恢复的文件,然后单击“恢复”。所选文件将恢复到其原始位置。如果文件不在回收站中,您可以尝试使用页面底部的第二阶段回收站链接。 SharePoint Online PowerShell cmdlet 还可用于还原已删除的文件。
详细信息:如何在 SharePoint Online 中还原已删除的文件?
在 SharePoint 中删除文件时会发生什么?
在 SharePoint 中删除文件时,该文件会移至回收站。该文件将在回收站中保留一段时间(通常为 93 天),然后才会被永久删除。在此期间,如果需要,可以恢复该文件。如果文件从第一阶段回收站和第二阶段回收站中都被删除,则该文件将无法恢复并永久丢失。
如何删除 SharePoint Online 中的文档库?
要删除 SharePoint 文档库,请导航到要删除的库,单击右上角的齿轮图标,选择“库设置”,然后单击“权限和管理”下的“删除此文档库” “ 部分。确认删除,该库将从网站上删除。相同的过程也适用于 SharePoint 列表。
详细信息:删除 SharePoint Online 中的文档库
如何从 SharePoint 中永久删除文件?
要从 SharePoint 中永久删除文件,您必须首先从回收站的两个阶段中将其删除。转到网站设置并选择“网站集管理”下的“回收站”。选择该文件并单击“删除”将其从第一阶段回收站中删除。然后点击页面底部的“第二阶段”回收站链接,也从那里删除文件!
