使用 PhotoRec 恢复文件后,我运行了 fdupes $ fdupes -rdNI --sameline /home/user > fdupes.txt
。我无法使用该选项,-d
因为我的系统中大约有 160 万个文件已被恢复。我还运行了几次 fdupes,直到找不到更多重复项。
问题是我在fdupes.txt
(> 50 MB)的结构中得到了很多条目
[+] /home/user/recup/jar/f105168728.jar
[-] /home/user/a/path/to/dir/and/file/myfile_1.ending
[-] /home/user/another/path/to/dir/and/file/myfile_2.ending
是否有脚本或已编写的程序将“recup”文件移动到我在目录中按顺序排列它们的路径?
许多目录不会在那里,因为我$ find /home/user/ -depth -type d -empty -exec rmdir {} \;
后来也在那里。
我可以用 python(脚本)或其他语言一步创建包含子文件夹的文件夹吗?
答案1
这是我写的一个脚本python3
:
import os
import sys
import ast
import time
import signal
n = 1
from = 'asdf'
into = 'asdf'
d = '/home/user/fdupes.txt'
f = open ( d, "r" )
from = f.readline ()
into = f.readline ()
while '/' in from or '/' in into :
if ( '[+] /home/user/recup/' in from ) and not ( 'recup' in into ) and ( '[-] /home/user/' in into ) :
from = from.split ( '[+] ' ) [1]
from = from.split ( '\n' ) [0]
into = into.split ( '[-] ' ) [1]
end = into
( into, name ) = os.path.split (into)
end = end.split ( '\n' ) [0]
if os.path.isfile (from) :
if not os.path.isfile (end) :
if not os.path.isdir (into) :
os.makedirs (into)
os.rename (from, end)
else :
from = into
into = f.readline ()
n += 1
f.close ()
print ("Ready!")
但我认为它不能像home/user/sub/dir/of/a/file/
有一个空的时候那样创建一些东西home/user/sub/dir/
,可以吗?我必须为此运行几次吗?
我不这么认为,但我也不确定......
如果可以的话,我有一个解决方案:-)