Существует два основных подхода к восстановлению данных. Первая - это файловая резьба, которая пытается идентифицировать начало и конец файлов и извлекать их. Это очень хорошо подходит для определенных типов файлов, но вы теряете имена файлов и время файла. Это особенно хорошо для jpeg-изображений.
Второй подход во многом зависит от файловой системы. Вероятно, вы используете ext3 или ext4. Если вы используете ext3, то должен работать sluthkit. Тем не менее, я считаю, что sleuthkit еще не справляется с ext4. Если ваша файловая система ext3, попробуйте:
sudo apt-get install sleuthkit
и запустите
fls -r <device name of your home directory>
, например
fls -r /dev/sda1
(я не использовал WUBI так Я не знаю, где может быть ваш домашний раздел.)
Это покажет вам имена файлов, которые могут быть восстановлены. Если они могут быть восстановлены, тогда icat может быть использован для их восстановления.
Простая для работы сделана:
for i in ./*.txt; do echo 'cat' >> "$i"; done;
Это приведет к отображению всех файлов txt в текущем каталоге, циклов по ним и echo cat в них (добавление к контенту) , вы можете изменить >> на >, чтобы перезаписать содержимое файлов с помощью cat.
Другое, что вы можете сделать, это использовать tee для перенаправления потока на несколько файлов.
Чтобы добавить:
echo "cat" | tee -a *.txt
Чтобы перезаписать:
echo "cat" | tee *.txt
Подход Python:
#!/usr/bin/env python
import sys
for i in sys.argv[1:]:
with open(i,'w') as fd:
fd.write("cat\n")
он использует модуль sys для итерации по аргументам командной строки, каждый аргумент командной строки будет открыт, так как файл для записи «cat» с новой строкой будет записан в файл перед переходом к следующему Использование будет таким, как ./add_cat.py *.txt, который будет работать со всеми .txt файлами в текущем рабочем каталоге. Улучшение этого может включать использование аргумента командной строки # 1 в качестве строки для записи вместо hardcoding «cat».
Если файлы не пусты, вы можете использовать sed без цикла. Чтобы добавить cat в начало:
sed 'i\cat' *.txt
Чтобы добавить в конец:
sed 'a\cat' *.txt
Добавить после второй строки:
sed '2 a\cat' *.txt
Чтобы добавить к ним строки с foo в них:
sed '/foo/ i\cat' *.txt
Однако он не работает в пустых файлах.
(Чтобы на самом деле записать файлы после тестирования, вам понадобится опция -i: sed -i 'a\cat' *.txt)
Простая для работы сделана:
for i in ./*.txt; do echo 'cat' >> "$i"; done;
Это приведет к отображению всех файлов txt в текущем каталоге, циклов по ним и echo cat в них (добавление к контенту) , вы можете изменить >> на >, чтобы перезаписать содержимое файлов с помощью cat.
Другое, что вы можете сделать, это использовать tee для перенаправления потока на несколько файлов.
Чтобы добавить:
echo "cat" | tee -a *.txt
Чтобы перезаписать:
echo "cat" | tee *.txt
Подход Python:
#!/usr/bin/env python
import sys
for i in sys.argv[1:]:
with open(i,'w') as fd:
fd.write("cat\n")
он использует модуль sys для итерации по аргументам командной строки, каждый аргумент командной строки будет открыт, так как файл для записи «cat» с новой строкой будет записан в файл перед переходом к следующему Использование будет таким, как ./add_cat.py *.txt, который будет работать со всеми .txt файлами в текущем рабочем каталоге. Улучшение этого может включать использование аргумента командной строки # 1 в качестве строки для записи вместо hardcoding «cat».
Если файлы не пусты, вы можете использовать sed без цикла. Чтобы добавить cat в начало:
sed 'i\cat' *.txt
Чтобы добавить в конец:
sed 'a\cat' *.txt
Добавить после второй строки:
sed '2 a\cat' *.txt
Чтобы добавить к ним строки с foo в них:
sed '/foo/ i\cat' *.txt
Однако он не работает в пустых файлах.
(Чтобы на самом деле записать файлы после тестирования, вам понадобится опция -i: sed -i 'a\cat' *.txt)
Простая для работы сделана:
for i in ./*.txt; do echo 'cat' >> "$i"; done;
Это приведет к отображению всех файлов txt в текущем каталоге, циклов по ним и echo cat в них (добавление к контенту) , вы можете изменить >> на >, чтобы перезаписать содержимое файлов с помощью cat.
Другое, что вы можете сделать, это использовать tee для перенаправления потока на несколько файлов.
Чтобы добавить:
echo "cat" | tee -a *.txt
Чтобы перезаписать:
echo "cat" | tee *.txt
Подход Python:
#!/usr/bin/env python
import sys
for i in sys.argv[1:]:
with open(i,'w') as fd:
fd.write("cat\n")
он использует модуль sys для итерации по аргументам командной строки, каждый аргумент командной строки будет открыт, так как файл для записи «cat» с новой строкой будет записан в файл перед переходом к следующему Использование будет таким, как ./add_cat.py *.txt, который будет работать со всеми .txt файлами в текущем рабочем каталоге. Улучшение этого может включать использование аргумента командной строки # 1 в качестве строки для записи вместо hardcoding «cat».
Если файлы не пусты, вы можете использовать sed без цикла. Чтобы добавить cat в начало:
sed 'i\cat' *.txt
Чтобы добавить в конец:
sed 'a\cat' *.txt
Добавить после второй строки:
sed '2 a\cat' *.txt
Чтобы добавить к ним строки с foo в них:
sed '/foo/ i\cat' *.txt
Однако он не работает в пустых файлах.
(Чтобы на самом деле записать файлы после тестирования, вам понадобится опция -i: sed -i 'a\cat' *.txt)
Простая для работы сделана:
for i in ./*.txt; do echo 'cat' >> "$i"; done;
Это приведет к отображению всех файлов txt в текущем каталоге, циклов по ним и echo
cat в них (добавление к контенту) , вы можете изменить >>
на >
, чтобы перезаписать содержимое файлов с помощью cat.
Еще одна вещь, которую вы можете сделать, это использовать tee
для перенаправления потока на несколько файлов.
Чтобы добавить:
echo "cat" | tee -a *.txt
Чтобы перезаписать:
echo "cat" | tee *.txt
Если файлы не пусты, вы можете использовать sed
без цикла. Чтобы добавить cat
в начало:
sed 'i\cat' *.txt
Чтобы добавить в конец:
sed 'a\cat' *.txt
Добавить после второй строки:
sed '2 a\cat' *.txt
Чтобы добавить к ним строки с foo
:
sed '/foo/ i\cat' *.txt
Однако он не работает в пустых файлах. Вид ошибки.
(Чтобы на самом деле записать файлы после тестирования, вам понадобится опция -i
: sed -i 'a\cat' *.txt
)
Простая для работы сделана:
for i in ./*.txt; do echo 'cat' >> "$i"; done;
Это приведет к отображению всех файлов txt в текущем каталоге, циклов по ним и echo
cat в них (добавление к контенту) , вы можете изменить >>
на >
, чтобы перезаписать содержимое файлов с помощью cat.
Еще одна вещь, которую вы можете сделать, это использовать tee
для перенаправления потока на несколько файлов.
Чтобы добавить:
echo "cat" | tee -a *.txt
Чтобы перезаписать:
echo "cat" | tee *.txt