PhotoRec을 사용하여 파일을 복구한 후 fdupes를 실행했습니다 $ fdupes -rdNI --sameline /home/user > fdupes.txt
. -d
내 시스템에서 약 160만 개의 파일이 복구되었으므로 이 옵션을 사용할 수 없습니다 . 또한 더 이상 중복 항목이 발견되지 않을 때까지 fdupes를 몇 번 실행했습니다.
문제는 fdupes.txt
구조에 많은 항목이 있다는 것입니다(>50MB).
[+] /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
"복구" 파일을 디렉터리에서 주문한 경로로 이동하는 스크립트나 프로그램이 이미 작성되어 있습니까?
$ 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/
. 그렇죠? 이거 몇 번이나 실행해야 하나요?
그럴 것 같지는 않은데, 확실하진 않아요...
가능하다면 해결책이 있습니다 :-)