我通过大学邮箱拥有一个 OneDrive for Business 帐户。一个多月前,我误删了一些文件,当然,我刚刚才注意到。
我现在在网站上找到了 OneDrive 回收站中的所有文件,问题是它们有 6000 多个单独的文件,我需要全部。如果我尝试全部选择它们(很费劲),就会出现超时错误。
所以我不得不手动以 35-40 个文件为一组进行恢复。我快速计算了一下,这样要花 5 个多小时。
是否存在更快、更自动化的解决方案?
答案1
您可以使用 Poweshell 自动恢复 OneDrive 回收站中已删除的文件。
代码算法大致如下:
foreach ($fileitem in $FilteredRecycleBinArray)
{
$filename = $fileItem.Title
$fileitem.Restore()
try {
$ctx.ExecuteQuery()
logwrite -Logstring "Item $filename restored successfully" -type info
}
catch
{
logwrite -Logstring "Item $filename failed to restore with error: '$_.Exception.Message'" -type error
}
}
相关相关代码:
$ctx = New-Object Microsoft.SharePoint.Client.ClientContext($OnedriveUrl)
和:
$Recyclebinarray=$ctx.Site.RecycleBin
$ctx.Load($Recyclebinarray)
try {$ctx.ExecuteQuery()}
catch {logwrite -Logstring "Failed Collecting all deleted Items from $OnedriveURL with error: '$_.Exception.Message'" -type error
break}
这里有一个完整的例子:
https://gallery.technet.microsoft.com/office/Restore-deleted-files-in-a268fdcd