
Я не спал много. Плохой скрипт создавал папку под somewhere/~
и я попытался удалить его с помощью rm -rf ~
.
Я быстро нажимаю Ctrl C и не думаю, что потерял много файлов. Я понимаю, что они потеряны навсегда. Есть ли еще способ получить список удаленных файлов?
решение1
Я быстро нажимаю Ctrl C и не думаю, что потерял много файлов. Я понимаю, что они потеряны навсегда. Есть ли еще способ получить список удаленных файлов?
Нет простого способа "перечислить" то, что вы удалили. Вы можете сделать это, extundelete /dev/home_partition(sdx) --restore-all
чтобы попытаться восстановить свои данные, или следовать этому обширному ответу с более "безопасным" подходом к управлению удаленными данными:
Тестдискваш друг тоже в этом поиске;
решение2
Если locate
установлено и ежедневное задание cron запускается updatedb
для обновления списка, и оно было запущено до вашего rm
, а не после, вы можете попробовать:
locate -0 ~/\* | perl -l -0 -ne 'print unless lstat$_'
чтобы получить представление об ущербе.
То есть найти в базе данных файлы locate
, которых больше нет.
С помощью GNU locate
(не mlocate
) вы можете сократить это до:
locate -E ~/\*
решение3
Хотя я не могу получить точный список удаленных файлов, я могу увидеть те, которые остались с ls -fa ~
. Поскольку порядок, в котором файлы удаляются, известен (он такой же, как если бы вы получили файлы, перечисленные с ls -f
), я могу знать, до куда rm
они ушли. Так что
$ ls -fa ~
.
..
.cocoapods
...
Итак, все до .cocoapods
, плюс некоторые вещи в этой папке были удалены. Для меня это означает, что мне очень повезло, так как это в основном ~/.bashrc
и ~/.bash_profile
что я могу частично восстановить printenv
иalias
Тьфу!