Wie ermittle ich den ursprünglichen Speicherort der Datei, die sich derzeit im Papierkorb befindet?

40

Angenommen, eine Datei "Any File.pdf" befindet sich im Papierkorb (aka ~/.Trash).

Wie kann ich den ursprünglichen Standort ermitteln?

Mit "ursprünglicher Speicherort" meine ich den Ordner, in den diese Datei verschoben werden würde, wenn man den Befehl "Zurücksetzen" darauf anwenden würde (aber ohne dies tatsächlich zu tun)? (Siehe Abbildung unten.)

(Ich hatte gehofft, dass diese Informationen durch Ausführen von "Get Info" für die Datei verfügbar sein würden, aber ich habe sie dort nicht gefunden.)

Zurück geben

kjo
quelle
3
Wie bereits erwähnt hier (letzte Kommentar) diese Information scheint in der .DS_Store Datei in den Papierkorb-Ordner gespeichert werden
iolsmit
7
Siehe auch: superuser.com/questions/59376/…
Ian C.
Siehe soultion hier discussion.apple.com/thread/5767821?tstart=0 aber es funktioniert nicht, wenn der
Pacerier

Antworten:

8

Daten, die den ursprünglichen Speicherort einer Datei enthalten, bevor sie in den Papierkorb verschoben werden , befinden sich in der Datei .DS_Store im Ordner ~ / .Trash .

Da der Papierkorb ausgeblendet ist, kann er in der Finder-Anwendung normalerweise nicht gefunden werden. Am einfachsten finden Sie diese Datei, indem Sie das Terminal verwenden und die folgenden Befehle eingeben.

$cd ~/.Trash
$open -e .DS_Store

Dadurch wird die Datei in TextEdit geöffnet. Von dort aus sollten Sie in der Lage sein, schnell nach der Datei anhand ihres Namens und ihres ursprünglichen Pfades zu suchen.

Dateien in .DS_Store scheinen dem Muster zu folgen:

FILE_NAME ptbLustr ORIGINAL_PATH_TO_FILE

Hinweis Leerzeichen werden nur zur besseren Lesbarkeit hinzugefügt.

David
quelle
2
Hast du das tatsächlich getestet? .DS_Store enthält viele Binärdaten, ich habe überhaupt keine Dateinamen gefunden.
Nohillside
1
Ich habe dies vor dem Posten auf meinem eigenen Rechner getestet. Ich habe Verweise auf Dateien in meinem Papierkorb und ihre ursprünglichen Speicherorte gefunden.
David
1
Ah, scheint von den Spracheinstellungen abzuhängen, hier ist alles Unicode.
Nohillside
7
Ich glaube, diese Antwort funktioniert nur für OS X um / vor 10.4 oder 10.5, da .DS_Store jetzt eine Binärdatei ist und von Apple nicht dokumentiert .
bmike
Hier funktioniert es unter OS X 10.7.5 immer noch.
Dictionarics Anonymous
1

Die Informationen zum ursprünglichen Speicherort werden in der DS_Store- Datei gespeichert . In älteren Versionen von OS X wurde es im Nur-Text-Format und jetzt im Binärformat gespeichert. Diese Formate werden von Apple nicht dokumentiert, es gibt jedoch ein von Wim L erstelltes Tool, das sie lesen kann.

Das Tool ist in Perl geschrieben. Mac::Finder::DSStoreProject bietet Routinen zum Lesen und Schreiben der .DS_Storevon macOS generierten Dateien.

Wie pro Anfang begeht , wird das obige Werkzeug auf Mark Mitrovai Werk und Autor eigener Untersuchung basiert.

Mit examples/dsstore_dump.plwürde versucht, die Datensätze einer Geschäftsdatei in einem besser lesbaren Format zu sichern.

Anwendungsbeispiel:

$ perl dsstore_dump.pl ~/.Trash/.DS_Store

    &makeEntries("foo.png",
        ptbL => "Users/username/Desktop/",
        ptbN => "foo.png"
    ),

Siehe: dsstore Repo bei hhhh.org und ältere Repo bei GitHub .

Kenorb
quelle
0

Unter http://ponderthebits.com/2017/01/mac-dumpster-diving-identifying-deleted-file-references-in-the-trash-ds_store-files-part- sind einige einfachere Lösungen verfügbar. 1 /

Einschließlich dieses Terminal-Einzeilers zum Konvertieren einer .DS_StoreDatei in (meistens) Text:

xxd -p <path/to/.DS_Store> | sed 's/00//g' | tr -d '\n' | sed 's/\([0-9A-F]\{2\}\)/0x\1 /g' | xxd -r -p | strings | sed 's/ptb[LN]ustr//g'
Dan
quelle
Anstatt eine vorherige Antwort zu duplizieren , können Sie den Befehl möglicherweise erweitern, um den Speicherort für das Zurücksetzen speziell zurückzugeben. Wäre dies für diese Frage im Einzelfall sinnvoller?
grg
Ich "dupliziere" meine eigene Antwort, die ich auf 3 relevanten Threads gepostet habe, die keine Lösung lieferten, die für mich funktionierte. Ich habe nur versucht, anderen Menschen die Stunde der Suche zu ersparen, die ich tun musste. Entschuldigung, wenn ich das falsch mache.
Dan
Ich verstehe das und Sie haben nichts falsch gemacht. Ich dachte nur, dass es nützlich sein könnte, dieses Produkt auf die spezielle Fragestellung zuzuschneiden. Wenn Sie den Link in meinem vorherigen Kommentar angeben, wird die andere Frage jetzt in der Liste der verknüpften Fragen rechts angezeigt, die für andere nützlich sein könnten.
grg
-3

'Zurücklegen' der Datei. Verwenden Sie die Suchfunktion, um nach der Datei zu suchen. Wenn Sie Ihre Datei gefunden haben, klicken Sie mit der rechten Maustaste darauf und wählen Sie "Open Enclosing Folder".


quelle
2
Was ist, wenn derselbe Dateiname im Dateisystem mehrmals vorkommt? Dieser Ansatz schlägt in diesem Fall fehl. Das Lesen der Metadaten ist besser, wenn OS X zunächst den Speicherort für das Zurücksetzen ermittelt.
Ian C.
@ IanC., Aber diese Hazytruth-Option scheint die einzige Option zu sein, jetzt, dass Dsstore binär ist
Pacerier
Fuzzytruth ich meine ...
Pacerier