ค้นหาเว็บไซต์

SharePoint Online: กู้คืนไฟล์ที่ถูกลบจากถังรีไซเคิลโดยใช้ PowerShell


ความต้องการ: กู้คืนไฟล์จากถังรีไซเคิลใน SharePoint Online โดยใช้ PowerShell

จะคืนค่าไฟล์จากถังรีไซเคิลใน SharePoint Online ได้อย่างไร

มีหลายครั้งที่เราอาจพบว่าตัวเองต้องการวิธีเรียกค้นไฟล์หรือโฟลเดอร์ที่ถูกลบที่ถูกลบอย่างผิดพลาด ถังรีไซเคิลของ SharePoint มีความคล้ายคลึงกับสิ่งที่คุณมีในถังรีไซเคิลของ Windows บนเดสก์ท็อปของคุณไม่มากก็น้อย ทำให้คุณสามารถดูและกู้คืนรายการที่สูญหาย/เสียหาย/ถูกลบออกจากไซต์ของคุณได้ เนื่องจากไม่มีการสำรองข้อมูลในตัวสำหรับ SharePoint Online ถังรีไซเคิลจึงสามารถช่วยคุณกู้คืนรายการที่ถูกลบและป้องกันข้อมูลสูญหายได้นานถึง 93 วัน ดังนั้น ฉันจะกู้คืนไฟล์ที่ถูกลบใน SharePoint Online ได้อย่างไร

เมื่อต้องการคืนค่ารายการจากถังรีไซเคิลของ SharePoint Online ให้ทำดังต่อไปนี้:

  1. นำทางไปยังไซต์ SharePoint ที่คุณต้องการคืนค่ารายการที่ถูกลบจากถังรีไซเคิล
  2. คลิกที่ไอคอนรูปเฟืองการตั้งค่า >> เลือกลิงก์ "เนื้อหาไซต์" จากเมนูการตั้งค่าไซต์
  3. คลิกลิงก์ถังรีไซเคิลที่มุมขวาบนบนหน้าเนื้อหาของไซต์ คุณจะถูกนำไปยังหน้าถังรีไซเคิลสำหรับไซต์ (ไม่ใช่ไซต์คอลเลกชัน!) ซึ่งแสดงรายการทั้งหมดในถังรีไซเคิล

  4. หากต้องการคืนค่ารายการจากถังรีไซเคิลของไซต์ ให้ทำเครื่องหมายในช่องสำหรับแต่ละรายการที่คุณต้องการคืนค่าในหน้าถังรีไซเคิลแล้วคลิกปุ่ม "กู้คืน" เลือกรายการทั้งหมดหากคุณต้องการไฟล์ทั้งหมดกลับ หรือคุณสามารถเลือกเฉพาะไฟล์ที่คุณต้องการกู้คืนแล้วคลิกคืนค่า

รายการที่เลือกจะถูกคืนค่า และเพจถังรีไซเคิลของผู้ใช้ปลายทางจะถูกรีเฟรชเพื่อแสดงการเปลี่ยนแปลง สิ่งนี้มีประโยชน์หากคุณลบรายการโดยไม่ตั้งใจหรือถูกคนอื่นลบและคุณจำเป็นต้องกู้คืน หากคุณไม่พบไฟล์ที่ถูกลบในถังรีไซเคิลขั้นแรก คุณสามารถค้นหาในถังรีไซเคิลขั้นที่สองได้

กู้คืนไฟล์และโฟลเดอร์ที่ถูกลบจากถังรีไซเคิลของไซต์คอลเลกชัน

ถ้าคุณมีสิทธิ์ของผู้ดูแลระบบไซต์คอลเลกชัน คุณสามารถใช้ "ถังรีไซเคิลของไซต์คอลเลกชัน" และคืนค่ารายการต่างๆ สำหรับไซต์ใดๆ ในไซต์คอลเลกชันได้ ถ้ารายการถูกลบออกจากถังรีไซเคิลของไซต์คอลเลกชัน หรือเกินเวลาการเก็บรักษา รายการนั้นจะถูกลบอย่างถาวร ต่อไปนี้เป็นวิธีคืนค่าโฟลเดอร์ใน SharePoint Online:

  1. นำทางไปยังไซต์ระดับบนสุดในไซต์คอลเลกชัน (เว็บรูท) ในฐานะผู้ดูแลไซต์
  2. คลิกที่ไอคอนการตั้งค่า >> เลือกลิงก์ "การตั้งค่าไซต์" จากเมนูการตั้งค่า
  3. ในหน้าการตั้งค่าไซต์ คลิกที่ลิงก์ "ถังรีไซเคิล" จากส่วน "การดูแลไซต์คอลเลกชัน"
  4. ค้นหาและเลือกเอกสารที่ถูกลบแล้วคลิก "กู้คืนการเลือก"

ในตอนนี้ คุณสามารถทำตามขั้นตอนเดียวกันเพื่อคืนค่ารายการใดๆ ในถังรีไซเคิลของผู้ดูแลไซต์คอลเลกชันได้

ตรวจสอบให้แน่ใจว่าคุณไม่มีไฟล์หรือโฟลเดอร์ที่มีชื่อเดียวกันในถังรีไซเคิล มิฉะนั้นคุณจะพบข้อผิดพลาด: “มีโฟลเดอร์ชื่อนี้ “ชื่อโฟลเดอร์” มีอยู่แล้วใน “ตำแหน่ง” หากต้องการคืนค่าโฟลเดอร์ ให้เปลี่ยนชื่อโฟลเดอร์ที่มีอยู่แล้วลองอีกครั้ง” ในทำนองเดียวกัน เราสามารถกู้คืนรายการที่ถูกลบ เช่น ไฟล์หรือโฟลเดอร์โดยใช้ PowerShell

วิธีการกู้คืนไลบรารีเอกสารที่ถูกลบใน SharePoint Online

ถ้าคุณเคยลบไลบรารีเอกสารใน SharePoint Online โดยไม่ได้ตั้งใจ ให้ทำตามขั้นตอนด้านล่างเพื่อกู้คืนไลบรารีนั้น

  1. ไปที่ไซต์ SharePoint Online ที่คุณลบไลบรารีเอกสาร
  2. คลิกที่การตั้งค่าที่มุมขวาบนและเลือกข้อมูลไซต์ >> ดูการตั้งค่าไซต์ทั้งหมด
  3. ในหน้าการตั้งค่าไซต์ เลื่อนลงไปที่ส่วนการดูแลไซต์คอลเลกชัน และคลิกที่ "ถังรีไซเคิล"
  4. ค้นหาไลบรารีเอกสารที่คุณลบโดยไม่ตั้งใจและคลิกที่ปุ่มกู้คืนที่อยู่ด้านข้าง หากคุณไม่พบที่นั่น ให้ตรวจสอบถังรีไซเคิล "ระยะที่สอง"
  5. แค่นั้นแหละ! ไลบรารีเอกสารของคุณได้รับการกู้คืนเรียบร้อยแล้ว
จะตรวจสอบได้อย่างไรว่าใครลบไฟล์ใน SharePoint Online เพียงแค่ดูที่คอลัมน์ "ลบโดย"!

รายการ รายการ ไลบรารี ไฟล์ และเวอร์ชันของไฟล์สามารถคืนค่าไปยังตำแหน่งเดิมได้หากไฟล์พาเรนต์ยังไม่ได้ถูกลบออกไป หากไฟล์ถูกลบ คุณจะไม่สามารถกู้คืนเวอร์ชันของไฟล์ได้ เป็นเพราะการลบไฟล์จะลบไฟล์ทุกเวอร์ชัน เช่นเดียวกับหากไลบรารีที่เป็นของไฟล์ถูกลบไปแล้ว ต้องกู้คืนไลบรารีก่อนจึงจะสามารถกู้คืนไฟล์ได้

ฉันจะกู้คืนไฟล์ที่ถูกลบอย่างถาวรจาก SharePoint Online ได้อย่างไร ผู้ดูแลระบบสามารถติดต่อฝ่ายสนับสนุนของ Microsoft ได้หากไม่พบเนื้อหาในถังรีไซเคิลของผู้ใช้และไซต์คอลเลกชัน

SharePoint Online: PowerShell เพื่อกู้คืนรายการจากถังรีไซเคิล

PowerShell เป็นวิธีที่มีประสิทธิภาพในการกู้คืนไฟล์ที่ถูกลบใน SharePoint Online ที่ยังอยู่ในถังรีไซเคิล มาคืนค่ารายการทั้งหมดที่ถูกลบโดยผู้ใช้รายใดรายหนึ่งในคอลเลกชันไซต์ SharePoint Online:


#Load SharePoint Online 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"
    
##Variables for Processing
$SiteUrl = "https://crescent.sharepoint.com/sites/marketing"
$DeletedByUserEmail = "salaudeen@crescent.com"

#Get Credentials to connect
$Cred= Get-Credential
  
Try {    
    #Setup the context
    $Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteUrl)
    $Ctx.Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.Username, $Cred.Password)
     
    #Get the Site recycle bin
    $Site = $Ctx.Site
    $RecycleBinItems = $Site.RecycleBin
    $Ctx.Load($Site)
    $Ctx.Load($RecycleBinItems)
    $Ctx.ExecuteQuery()
 
    #Get all items deleted by a specific user
    $DeletedItemsByUser = $RecycleBinItems | Where {$_.DeletedByEmail -eq $DeletedByUserEmail}
    Write-Host "Total Number of Items Deleted by User in Recycle Bin:" $DeletedItemsByUser.Count
     
    #sharepoint online restore deleted files using PowerSehll
    $DeletedItemsByUser | ForEach-Object { $_.Restore(); Write-host "Restored Itme:"$_.Title }
    $Ctx.ExecuteQuery()    
}
catch {
    write-host "Error: $($_.Exception.Message)" -foregroundcolor Red
}

PowerShell นี้กู้คืนไฟล์และโฟลเดอร์ SharePoint ที่ถูกลบ ในทำนองเดียวกัน เราสามารถกู้คืนรายการที่ถูกลบตามวันที่ลบได้

SharePoint Online PowerShell เพื่อกู้คืนรายการจากถังรีไซเคิล

มาคืนค่ารายการทั้งหมดที่ถูกลบในวันนี้! ต่อไปนี้เป็นวิธีการกู้คืนจำนวนมากจากถังรีไซเคิลโดยใช้ PowerShell:


#Load SharePoint Online 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"
    
##Variables for Processing
$SiteUrl = "https://crescent.sharepoint.com/sites/marketing"
$DeletedDate = (Get-Date).Date #Get Today's Date

#Get Credentials to connect
$Cred= Get-Credential
  
Try {    
    #Setup the context
    $Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteUrl)
    $Ctx.Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.Username, $Cred.Password)
     
    #Get the Site recycle bin
    $Site = $Ctx.Site
    $RecycleBinItems = $Site.RecycleBin
    $Ctx.Load($Site)
    $Ctx.Load($RecycleBinItems)
    $Ctx.ExecuteQuery()
 
    #Get all items deleted on given date
    $DeletedItems = $RecycleBinItems | Where { ($_.DeletedDate).Date -eq $DeletedDate }
    Write-Host "Total Number of Items Deleted on given Date:" $DeletedItems.Count
     
    #Restore items from Recylce bin
    $DeletedItems | ForEach-Object { $_.Restore(); Write-host "Restored Item:"$_.Title }
    $Ctx.ExecuteQuery()    
}
catch {
    write-host "Error: $($_.Exception.Message)" -foregroundcolor Red
} 

ขั้นตอนเหล่านี้สามารถใช้เพื่อกู้คืนไฟล์ที่ถูกลบจากถังรีไซเคิลได้อย่างง่ายดายและมีประสิทธิภาพ

PnP PowerShell เพื่อกู้คืนรายการถังรีไซเคิลใน SharePoint Online

มาคืนค่ารายการที่ถูกลบในเจ็ดวันที่ผ่านมาโดยใช้สคริปต์ PnP PowerShell


#Parameter
$SiteURL= "https://crescent.sharepoint.com/sites/marketing"

#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Credentials (Get-Credential)

#Get All Items Deleted in the Past 7 Days
$DeletedItems = Get-PnPRecycleBinItem -RowLimit 500000 | Where { $_.DeletedDate -gt (Get-Date).AddDays(-7) }

#Restore Recycle bin items matching given query
$DeletedItems | Restore-PnpRecycleBinItem -Force

กู้คืนไฟล์ทั้งหมดที่ถูกลบออกจากไลบรารี SharePoint Online โดยเฉพาะ

ในทำนองเดียวกัน คุณสามารถคืนค่ารายการทั้งหมดที่ถูกลบออกจากไซต์ ไซต์ย่อย ไลบรารี หรือโฟลเดอร์เฉพาะได้โดยใช้ PowerShell:


#Parameter
$SiteURL= "https://crescent.sharepoint.com/sites/marketing"
$DirPath = "sites/marketing/Shared Documents"

#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Interactive

#Get All Items deleted from a specific path or library
$DeletedItems = Get-PnPRecycleBinItem -RowLimit 500000 | Where { $_.DirName -like "$DirPath*"} | Restore-PnpRecycleBinItem -Force

แล้วจะข้ามไฟล์หรือโฟลเดอร์ไปได้อย่างไรถ้ามันมีอยู่แล้ว?


#Parameter
$SiteURL= "https://crescent.sharepoint.com/sites/marketing"
$DirPath = "sites/marketing/Migration"
 
#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Interactive

#Get the Web
$Web = Get-PnPWeb
 
#Get All Items deleted from a specific path or library - sort by most recently deleted
$DeletedItems = Get-PnPRecycleBinItem -RowLimit 500000 | Where { $_.DirName -like "$DirPath*"} | Sort-Object -Property DeletedDate -Descending

#Restore all deleted items from the given path to its original location
ForEach($Item in $DeletedItems)
{
    #Get the Original location of the deleted file
    $OriginalLocation = "/"+$Item.DirName+"/"+$Item.LeafName
    If($Item.ItemType -eq "File")
    {
        $OriginalItem = Get-PnPFile -Url $OriginalLocation -AsListItem -ErrorAction SilentlyContinue
    }
    Else #Folder
    {
        $OriginalItem = Get-PnPFolder -Url $OriginalLocation -ErrorAction SilentlyContinue
    }
    #Check if the item exists in the original location
    If($OriginalItem -eq $null)
    { 
        #Restore the item
        $Item | Restore-PnpRecycleBinItem -Force
        Write-Host "Item '$($Item.LeafName)' restored Successfully!" -f Green
    }
    Else
    {
        Write-Host "There is another file with the same name.. Skipping $($Item.LeafName)" -f Yellow
    }
}

คุณจะกู้คืนไฟล์ที่ถูกลบโดยผู้ใช้รายใดรายหนึ่งภายในระยะเวลาที่กำหนดโดยใช้ PowerShell ได้อย่างไร แน่นอน นี่คือวิธีการ:


$SiteURL = "https://crescent.sharepoint.com/sites/Retail"
#Set From and To Date
$FromDate = Get-Date("01/15/2021")
$ToDate= Get-Date("02/15/2021")
$DeletedByEmail = "salaudeen@crescent.com"

#Connect to Site
Connect-PnPOnline -Url $SiteURL -Interactive

#Restore All Items deleted between given date and by a specific user
$DeletedItems = Get-PnPRecycleBinItem -RowLimit 500000 | Where {($_.DeletedDate -ge $FromDate -and $_.DeletedDate -le $ToDate) -and ($_.DeletedByEmail -eq $DeletedByEmail)} | Sort-Object -Property DeletedDate -Descending

SharePoint Online: กู้คืนไฟล์ทั้งหมดที่ถูกลบโดยผู้ใช้รายใดรายหนึ่ง

หากต้องการกู้คืนไฟล์ทั้งหมดที่ถูกลบโดยผู้ใช้รายใดรายหนึ่ง ให้ใช้:


Get-PnPRecycleBinItem -RowLimit 500000 | Where { $_.DeletedByEmail -eq "salaudeen@crescent.com"} | Restore-PnpRecycleBinItem -Force
SharePoint Online: กู้คืนรายการทั้งหมดในถังรีไซเคิลจำนวนมาก
หากต้องการกู้คืนรายการทั้งหมดจากถังรีไซเคิล เพียงลบส่วนคำสั่ง "where" ออกจากสคริปต์!
รับ-PnPRecycleBinItem -RowLimit 500000 | คืนค่า-PnpRecycleBinItem

ห่อ

โดยสรุป การกู้คืนไฟล์ที่ถูกลบจากถังรีไซเคิลใน SharePoint Online โดยใช้ PowerShell เป็นกระบวนการที่ไม่ซับซ้อนซึ่งใครก็ตามที่มีความรู้พื้นฐานเกี่ยวกับแพลตฟอร์มและภาษาสคริปต์ PowerShell ก็สามารถทำได้ ด้วยการใช้ PowerShell คุณสามารถกู้คืนไฟล์ที่ถูกลบได้อย่างรวดเร็วและง่ายดายโดยไม่จำเป็นต้องใช้เว็บอินเทอร์เฟซของ SharePoint Online ไม่ว่าคุณจะเป็นผู้ดูแลระบบ SharePoint หรือเจ้าของไซต์ การกู้คืนไฟล์ที่ถูกลบโดยใช้ PowerShell เป็นเครื่องมือสำคัญในคลังแสงของคุณสำหรับการจัดการและปกป้องข้อมูล SharePoint Online ของคุณ ด้วยความสามารถในการกู้คืนไฟล์ที่ถูกลบอย่างรวดเร็วและง่ายดาย คุณจึงสามารถช่วยให้มั่นใจได้ว่าข้อมูลสำคัญจะไม่สูญหาย แม้ว่าในกรณีที่ถูกลบโดยไม่ตั้งใจก็ตาม

นี่คืออีกโพสต์เกี่ยวกับการกู้คืนไฟล์จากถังรีไซเคิล: SharePoint Online: กู้คืนไฟล์จากถังรีไซเคิลโดยใช้ PowerShell

คำถามที่พบบ่อย:

ฉันจะล้างถังรีไซเคิลใน SharePoint Online ได้อย่างไร

นำทางไปยังไซต์ SharePoint Online ของคุณ และคลิกที่ "ถังรีไซเคิล" จากการนำทางเปิดใช้ด่วน คุณยังสามารถเข้าถึงถังรีไซเคิลได้จากการตั้งค่าไซต์ >> เลือก "เนื้อหาของไซต์">>> คลิกที่ลิงก์ "ถังรีไซเคิล" ที่มุมขวาบน บนหน้าถังรีไซเคิล คลิกที่ปุ่ม “ล้างถังรีไซเคิล” ในแถบเครื่องมือ!
ข้อมูลเพิ่มเติม: ล้างถังรีไซเคิลใน SharePoint Online โดยใช้ PowerShell

ฉันจะลบไซต์คอลเลกชันออกจากถังรีไซเคิล SharePoint Online ได้อย่างไร

คอลเลกชันไซต์ที่ถูกลบจะเข้าไปในถังรีไซเคิลระดับผู้เช่า คุณสามารถลบไซต์ที่ถูกลบออกอย่างถาวรได้จากศูนย์การจัดการ SharePoint: ในศูนย์การจัดการ SharePoint Online คลิกที่ "ไซต์">> "ไซต์ที่ถูกลบ">> เลือกไซต์จากรายการและคลิกที่ปุ่ม "ลบ" ใน แถบเครื่องมือ คุณยังสามารถใช้ PowerShell เพื่อล้างถังรีไซเคิลได้
ข้อมูลเพิ่มเติม: ลบไซต์คอลเลกชันใน SharePoint Online อย่างถาวร

ฉันจะเข้าถึงถังรีไซเคิลของ SharePoint Online ได้อย่างไร

หากต้องการเข้าถึงถังรีไซเคิลใน SharePoint Online ให้ไปที่ไซต์ SharePoint >> คลิกที่ไอคอนรูปเฟืองการตั้งค่า >> เลือก "เนื้อหาของไซต์" บนหน้าเนื้อหาของไซต์ คลิกลิงก์ถังรีไซเคิลที่มุมขวาบน

ฉันจะกู้คืนไซต์ย่อยที่ถูกลบใน SharePoint ออนไลน์ได้อย่างไร

ไซต์ย่อยที่ถูกลบไปที่ถังรีไซเคิลของไซต์คอลเลกชันระยะที่สอง ไปที่คอลเลกชันไซต์ SharePoint Online ที่คุณลบไซต์ย่อย คลิกที่เฟืองการตั้งค่า เลือกข้อมูลไซต์ >> ดูการตั้งค่าไซต์ทั้งหมด ในหน้าการตั้งค่าไซต์ เลื่อนลงไปที่ส่วนการดูแลไซต์คอลเลกชัน และคลิกที่ "ถังรีไซเคิล" คลิกที่ลิงก์ “ถังรีไซเคิลขั้นที่สอง” ที่ด้านล่าง >> เลือกไซต์ย่อยแล้วคลิกปุ่ม “กู้คืน” ในแถบคำสั่งเพื่อเริ่มการกู้คืนไซต์ย่อย
ข้อมูลเพิ่มเติม: SharePoint Online กู้คืนไซต์ย่อยที่ถูกลบ

อะไรคือความแตกต่างระหว่างถังรีไซเคิลของไซต์และถังรีไซเคิลของไซต์คอลเลกชัน?

ถังรีไซเคิลของไซต์และถังรีไซเคิลของไซต์คอลเลกชันเป็นสองตำแหน่งที่ตั้งที่แตกต่างกันใน SharePoint Online ที่เก็บรายการที่ถูกลบ ถังรีไซเคิลของไซต์เป็นตำแหน่งเฉพาะบนไซต์ที่จัดเก็บรายการที่ถูกลบทั้งหมด และอนุญาตให้ผู้ใช้เข้าถึงและกู้คืนเนื้อหาได้หากจำเป็น ถังรีไซเคิลของไซต์คอลเลกชันหรือที่เรียกว่าถังรีไซเคิลขั้นที่สองคือถังรีไซเคิลที่ผู้ดูแลระบบของไซต์คอลเลกชันจัดการ ช่วยให้ผู้ดูแลระบบของไซต์คอลเลกชันสามารถควบคุมรายการที่ถูกลบได้ดียิ่งขึ้นโดยการจัดหาถังรีไซเคิลขั้นที่สอง ถังรีไซเคิลของไซต์คอลเลกชันสามารถเข้าถึงได้โดยผู้ดูแลไซต์คอลเลกชันเท่านั้น

บทความที่เกี่ยวข้อง