SharePoint Online: ค้นหาถังรีไซเคิลโดยใช้ PowerShell
ข้อกำหนด: ค้นหาถังรีไซเคิลของ SharePoint Online สำหรับไฟล์ทั้งหมดที่ถูกลบโดยผู้ใช้รายใดรายหนึ่ง
จะค้นหาถังรีไซเคิลของ SharePoint Online ได้อย่างไร
คุณรู้หรือไม่ว่าคุณสามารถใช้ PowerShell เพื่อค้นหาถังรีไซเคิลใน SharePoint Online ได้ ในโพสต์บนบล็อกนี้ เราจะสำรวจพื้นฐานของการใช้ PowerShell เพื่อค้นหาถังรีไซเคิลออนไลน์ของ SharePoint
หากต้องการค้นหารายการทั้งหมดที่ถูกลบโดยผู้ใช้รายใดรายหนึ่ง ให้ทำดังต่อไปนี้:
- นำทางไปยังไซต์ SharePoint Online ของคุณ และคลิกที่เครื่องมือการตั้งค่าไซต์ >> เลือก "การตั้งค่าไซต์"
จากหน้าการตั้งค่าไซต์ คลิกที่ "ถังรีไซเคิล" จากการดูแลไซต์คอลเลกชัน หน้านี้จะแสดงรายการที่ถูกลบทั้งหมดในไซต์คอลเลกชันพร้อมกับข้อมูลผู้ใช้ที่ถูกลบ
อย่างไรก็ตาม การค้นหาถังรีไซเคิลของ SharePoint Online ผ่านทางส่วนติดต่อผู้ใช้แบบเว็บนั้นเป็นเรื่องที่ยุ่งยากเมื่อคุณมีไฟล์ที่ถูกลบจำนวนมาก ลองใช้ PowerShell เพื่อรับไฟล์ที่ถูกลบจากถังรีไซเคิล
สคริปต์ PowerShell เพื่อค้นหาถังรีไซเคิลของ SharePoint Online
นี่คือ SharePoint Online 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/Sales"
$AdminUserName="Salaudeen@crescent.com"
$DeletedByUserAccount="salaudeen.rajack@crescent.com"
#Get the password to connect
$Password = Read-host -assecurestring "Enter Password for $AdminUserName"
$Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($AdminUserName,$Password)
Try {
#Setup the context
$Context = New-Object Microsoft.SharePoint.Client.ClientContext($SiteUrl)
$Context.Credentials = $Credentials
#Get the site recycle bin
$Site = $Context.Site
$RecycleBinItems = $Site.RecycleBin
$Context.Load($Site)
$Context.Load($RecycleBinItems)
$Context.ExecuteQuery()
#Get all items deleted by particular user in Recycle bin
$DeletedByUser = $RecycleBinItems | Where {$_.DeletedByEmail -eq $DeletedByUserAccount}
Write-Host "Total Number of Items deleted by user:" $DeletedByUser.Count
#format output as table and print to console
$DeletedByUser | Select Title, DeletedByEmail, DeletedDate | Format-Table
}
catch {
write-host "Error: $($_.Exception.Message)" -foregroundcolor Red
}
PnP PowerShell เพื่อรับรายการถังรีไซเคิลของ SharePoint Online:
การค้นหาถังรีไซเคิลของคุณใน SharePoint Online โดยใช้ PnP PowerShell เป็นเรื่องง่าย ด้วยโค้ดเพียงไม่กี่บรรทัด คุณสามารถค้นหาเนื้อหาของถังรีไซเคิลและค้นหารายการที่คุณกำลังมองหาได้ ในการเริ่มต้น ให้เปิด PowerShell และเชื่อมต่อกับไซต์ SharePoint Online ของคุณ จากนั้น รันสคริปต์ต่อไปนี้:
ต่อไปนี้คือวิธีค้นหาถังรีไซเคิลของ SharePoint Online ด้วย PnP PowerShell cmdlet Get-PnPRecycleBinItem
#Config Variables
$SiteURL = "https://Crescent.sharepoint.com/sites/marketing"
#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Interactive
#Get Recycle bin Items
Get-PnPRecycleBinItem -RowLimit 500000 | Select Title, ItemType, Size, ItemState, DirName, DeletedByName, DeletedDate | Format-table -AutoSize
สคริปต์ PowerShell นี้รับรายการทั้งหมดจากถังรีไซเคิลของไซต์คอลเลกชัน SharePoint Online ที่ระบุ:
คุณสามารถส่งออกข้อมูลรายการถังรีไซเคิลเป็นไฟล์ CSV ได้โดย:
#Get Recycle bin Items and Export to CSV
Get-PnPRecycleBinItem -RowLimit 500000 | Select Title, ItemType, Size, ItemState, DirName, DeletedByName, DeletedDate | Export-Csv "C:\Temp\RecycleBin.csv" -NoTypeInformation
สคริปต์นี้ช่วยให้คุณได้รับข้อมูลของรายการที่ถูกลบทั้งหมดจากถังรีไซเคิลขั้นที่หนึ่งและขั้นที่สอง หากต้องการคืนค่ารายการที่ถูกลบจากถังรีไซเคิลให้ใช้: วิธีคืนค่ารายการที่ถูกลบใน SharePoint Online
หากคุณเป็นผู้ดูแลระบบ SharePoint Online คุณสามารถใช้ PowerShell เพื่อจัดการถังรีไซเคิลได้ ตัวอย่างเช่น คุณสามารถใช้ PowerShell เพื่อล้างถังรีไซเคิลหรือกู้คืนรายการจากถังรีไซเคิล เมื่อต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการใช้ PowerShell กับ SharePoint Online ดูบทความต่อไปนี้:
- วิธีใช้ PowerShell กับ SharePoint Online
- วิธีล้างถังรีไซเคิลของ SharePoint Online
- วิธีคืนค่าไซต์จากถังรีไซเคิลของ SharePoint Online

