Mac (Linux) – Über den Befehl mv entfernte Datei wiederherstellen

Mac (Linux) – Über den Befehl mv entfernte Datei wiederherstellen

Ich habe ein großes Problem. Ich hatte zwei Dateien - main.c und logic.c. Ich habe sed für einige Änderungen in logic.c verwendet und sie dann in main_updated.c gespeichert und dann ausgeführt

mv main_updated.c main.c

ABER es musste logic_updated.c und logic.c sein. Kann mir bitte jemand helfen, wie ich die Datei main.c wiederherstelle, sonst bin ich erledigt.

Antwort1

Die Wahrscheinlichkeit ist sehr hoch, dass Ihre alten Daten verloren gegangen sind. Es hängt wirklich davon ab, wie das Dateisystem beim Überschreiben von Daten funktioniert. Wenn das Dateisystem die Inodes einfach freigibt und neue an anderer Stelle auf dem Laufwerk zuweist, können Sie die Daten möglicherweise mit einem Wiederherstellungsprogramm finden ... vielleicht. Sie müssten wissen, wo Sie suchen müssen, da es wahrscheinlich eine Reihe von Inodes zurückgeben würde (und es weiß möglicherweise nicht, welche alle Daten für Ihre Dateien enthalten, sodass Sie sie manuell zusammensetzen müssten).

Lektion gelernt – Commit nach (fast) jeder Änderung ;P

Antwort2

Ich fürchte, Sie haben tatsächlich Ihre main.c-Datei beschädigt.

Zukünftig können Sie mv „interaktiv“ nutzen mit:

mv -i filename new_filename/or_path

Vor dem Überschreiben einer Datei erfolgt eine Rückfrage bei Ihnen.

Auch häufige Commits mit Ihrer Versionskontrollsoftware sind eine gute Idee.

verwandte Informationen