Wie kann ich eine große Datei aus dem Papierkorb wiederherstellen?

1981
Todd J. York

Eine Software zur Dateisynchronisierung geriet außer Kontrolle und entfernte die meisten meiner persönlichen Dateien. Glücklicherweise wurden sie im Papierkorb gefunden. Das Problem ist nun, dass ich sie nicht wiederherstellen kann, weil zu viele Dateien (über 30.000) wiederhergestellt werden müssen.

Als ich auf die Schaltfläche "Alle Elemente wiederherstellen" klickte, wurde der Explorer für eine Weile eingefroren. Danach wurde ein Popup-Fenster mit der Meldung "Vorbereitung für das Verschieben von Dateien" angezeigt und bei "0 Element gefunden" angezeigt.

Ich habe versucht, fünf Dateiseiten (ungefähr 100) gleichzeitig wiederherzustellen, und dieser Versuch war erfolgreich. Es ist jedoch unmöglich, so viele manuell wiederherzustellen.

Ich habe alle Papierkorbelemente, die sich vor dem Unfall bereits dort befanden haben, endgültig gelöscht. Jede Datei ist jetzt eindeutig und es besteht keine Gefahr, dass Duplikate den Vorgang unterbrechen, wenn ich einen Stapel oder etwas anderes starte. Eigentlich kann ich versuchen, ein Programm selbst zu schreiben, vielleicht gibt es einen Verweis auf StackOverflow, aber ich kann nicht riskieren, die Dateien vollständig zu zerstören, daher ist dies nicht die Option, zumindest nicht für jetzt.

Irgendwelche Ideen? Danke im Voraus.

4

2 Antworten auf die Frage

2
Alison E.E.

Diese Methode sollte alle Dateien aus dem Papierkorb holen. Beachten Sie jedoch, dass Sie diese Dateien wieder dort ablegen müssen, wo sie selbst hingehören, wenn Sie sie in einem bestimmten Verzeichnis benötigen.

1.) Öffnen Sie die Eingabeaufforderung als Administrator, führen Sie den Befehl aus wmic useraccount get name,sid, kopieren Sie die SID für Ihren Benutzer. Führen Sie nun an derselben Eingabeaufforderung cd \$Recycle.Bin\%SID%die SID durch die SID aus, die Sie gerade in Ihre Zwischenablage kopiert haben ein versteckter Ordner und erfordert, dass diese im Namen belassen werden).

2.) Nun kopieren Sie alles in diesem Ordner in einen leeren Ordner Ihrer Wahl, xcopy /e .\* C:\path\to\your\empty\folder\aber seien Sie gewarnt, dies kopiert alle 30000-Dateien über die Eingabeaufforderung und dauert wahrscheinlich eine Weile. Überprüfen Sie anschließend die Eingabeaufforderung, um sicherzustellen, dass keine Fehler aufgetreten sind, und überprüfen Sie den Ordner, in den Sie alles kopiert haben, und stellen Sie sicher, dass alles vorhanden ist. Sie sollten jetzt Ihren Papierkorb sicher leeren können.

Dies ersetzt nur einen Ordner durch einen anderen, um herauszufinden, wo ist der Gewinn darin? ths vor 7 Jahren 0
Das ist irgendwie nutzlos, es sei denn, ich kann ein Schlüsselwörterbuch der aktuellen Namen und Pfade aller entfernten Dateien über eine Windows-API abrufen und sie dann automatisch wiederherstellen ... oder ich möchte lieber auf die neueste Version zurückgreifen Backup ... Todd J. York vor 7 Jahren 0
Das Problem bestand nicht darin, den Ordner zu sortieren, sondern sie aus dem Papierkorb zu holen. Soweit die Antwort Ihnen nicht hilft, tut mir leid, aber ich weiß nicht, wie Sie sie abrufen könnten, wenn der Forscher buchstäblich behauptet, dass nichts da ist. Ich dachte an die Art und Weise, wie Sie es formuliert haben, dass Sie versuchten, eine Notfallwiederherstellung von Dateien durchzuführen, die Sie nicht auf andere Weise aufbewahren konnten. Wenn Sie eine Sicherungskopie haben, die sie enthält, und die Option, sie zurückzurollen, kann ich ehrlich gesagt keinen Grund dafür finden, dies nicht zu tun, sondern den Versuch, 30000 Dateien manuell zu retten, von denen der Explorer glaubt, dass sie nicht existieren. Alison E.E. vor 7 Jahren 0
@ AlisonE.E. Ich möchte die nach der Sicherung vorgenommenen Änderungen nicht verlieren und aus irgendeinem Grund ist das Abrufen von 30000-Dateien vom Sicherungsserver ebenfalls schwierig (dies würde aufgrund der schlechten Konnektivität mindestens 2 Tage dauern und kann nicht rückgängig gemacht werden, da ich Ich habe keinen Platz mehr und muss sie zuerst löschen) ... Ich werde es versuchen, ich habe bereits einen Hinweis auf die Interaktion mit dem Recycler über COM gefunden. Danke trotzdem. Todd J. York vor 7 Jahren 0
0
Todd J. York

Ich habe endlich herausgefunden, wie man mit C # dieses Problem lösen kann.

Es tut uns leid, dass Sie keine kompilierte Version bereitgestellt haben, aber dieser Code ist sprachspezifisch (auch Windows-Version-spezifisch) und sollte nur von Personen verwendet werden, die sie nur verstehen.

Hier ist der auf Gist gehostete Code .

Es läuft sehr langsam ... aber das Gute ist, dass es funktioniert. Besser als nichts. Ich habe Zeit zu warten.

Referenz: