-2

У меня есть одна большая проблема. У меня было два файла - main.c и logic.c. Я использовал sed для некоторой модификации в logic.c, а затем я сохранил его в main_updated.c и затем запустил

mv main_updated.c main.c

НО это должны были быть logic_updated.c и logic.c. PLS может кто-нибудь мне помочь, как восстановить файл main.c или я мертв.

2 ответа2

2

Скорее всего, ваши старые данные исчезли. Это действительно зависит от того, как файловая система работает, когда дело доходит до перезаписи данных - если файловая система просто освобождает inode и размещает новые в другом месте на диске, вы можете использовать программу восстановления для поиска данных ... возможно - вы Мне нужно знать, где искать, поскольку он, вероятно, вернет кучу инодов (и он может не знать, какие из них содержат все данные для ваших файлов, поэтому вам придется собрать их вместе вручную).

Извлеченный урок - совершить после (большинства) каждое изменение; P

0

Я боюсь, что вы фактически забили свой файл main.c.

В будущем вы можете использовать mv "в интерактивном режиме" с:

mv -i filename new_filename/or_path

Он свяжется с вами перед перезаписью файла.

Также хорошая идея - частые коммиты с вашим программным обеспечением для контроля версий.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .