好的,简要的背景。 我意外rm -rf我的USB外部硬盘驱动器。 现在我正在使用Photorec恢复文件。 (我意外地删除了800GB,它是我的个人文件,主要是媒体,但是我也有其他的东西,比如pdf,xls,jpg,doc等)
所以,我连接了另一个350 GB的外部硬盘驱动器开始恢复,因为这是我得到的。 这些文件正在被倾销,我知道我会尽快用尽。
我需要一些帮助来自动化一些恢复。 恢复过程是转储文件夹中的文件。 每一个都以recup_dir.x开头
每个文件夹都有我的文件。 现在我想在每个文件夹的这些行上做一些事情; 导航到每个文件夹,并将所有的pdf,doc,xls,jpg文件复制到我的电脑中,并从其他外部硬盘上删除它们,这样我就可以进入睡眠状态,希望它至less能够恢复大部分所需的文件。 可以帮助一些:(
cp *.docx /home/me/Desktop/docx/ || cp *.doc /home/me/Desktop/docx/ || cp *.xls /home/me/Desktop/xls/ || cp *.pdf /home/me/Desktop/pdf/ || cp *.jpg /home/me/Desktop/jpg/ && rm *.doc *.docx *.pdf *.jpg *.xls
在我确认文件恢复成功之前,我绝不会删除任何文件。 特别是在编写脚本时,脚本中的拼写错误可能会删除所有内容。
恢复完成后,最好擦拭磁盘。
这就是说,我会考虑使用rsync,它应该是一个有点安全的select。 它有一个选项–remove-source-files这可能是你在找什么。 手册页可以在这里find。
但是,你必须考虑的一个问题是,如果rsync在恢复/复制到磁盘时开始复制文件,会发生什么情况。 再次,我认为错误的可能性太高。
更安全的方式
#!/bin/bash rsync --progress -gioprtv <recoverydir>/*.doc* /home/me/Desktop/docx/ && \ rsync --progress -gioprtv <recoverydir>/*.xls /home/me/Desktop/xls/ && \ rsync --progress -gioprtv <recoverydir>/*.jpg /gome/me/Desktop/jpg/ && \ rsync --progress -gioprtv <recoverydir>/*.pdf /gome/me/Desktop/pdf/; \
rsync通过哈希来validation文件,上面应该给你一个单独的副本的过程也是一个指示,所以你不是坐在那里twiddling你的拇指。
&&确保只有在前一步成功完成时才会进展,这样,如果发生任何错误,您可以返回并编辑脚本,并重复此过程。
把它放在一个文件,即resovery.sh chmod + x和你走了
永远不要删除源文件,直到你有机会审查它们。
另一种说法,你写道,你的东西大部分是媒体,但你没有提到你想恢复这些文件? 如果是这样,我更有意义的反转逻辑,而是删除这些文件,为您想保留的文件创造空间。
如果是这样,你可以玩这样的东西。 注意,这可以删除当前文件夹中的所有AVI文件和所有子文件夹!
find . -name "*.avi" - verify find . -name "*.avi" -exec rm -f {} \; - delete