방금 스캔한 PDF 파일을 삭제했습니다.
으로 복원하려고 합니다 scalpel
.
문제는 메스가 삭제된 많은 파일을 복구하고 숫자로 이름을 지정한다는 것입니다(예: 0001.pdf, 0002.pdf, ... 9999.pdf).
~에 따르면이 튜토리얼이 명령을 사용하여 grep
삭제된 파일에서 일부 텍스트를 검색할 수 있습니다.
문제는 파일이 스캔되므로(원본 파일 이름을 알고 있음) 무엇을 검색해야 할지 모르겠습니다.
답변1
문서를 다시 스캔할 수 있으면 복구된 문서와 자동으로 비교할 수 있습니다. 하지만 이런 경우에는 복원할 필요가 없을 것입니다.
이를 위해서는 올바른 PDF를 찾아야 하며 유사한 프로그램에서 하나씩 여는 것이 번거롭기 때문에 evince
파일이 복구된 디렉터리에서 다음 명령을 실행하는 것이 좋습니다..pdf
for i in *.pdf ; do
pdfimages -j -l 1 "$i" "${i%}"
done
이렇게 하면 첫 번째 페이지( ) 기본 이름이 PDF와 동일하게 JPEG 파일( -j
옵션, 스캔한 파일이 JPEG가 아닌 한 옵션) 이 남게 됩니다.-l 1
이제 eog
찾고 있는 문서를 (시각적으로) 식별할 때까지 추출된 이미지를 빠르게 탐색할 수 있습니다. 일단 찾으면 이미지 파일은 찾고 있는 PDF 파일과 동일한 기본 이름을 갖게 됩니다.
답변2
pdfinfo
파일에서 실행해 보세요 .
출력 Creator: Simple Scan
에는 검색할 수 있는 유사한 콘텐츠가 포함되어 있을 수 있습니다.
CreationDate
대략적인 생성 날짜를 알고 있는 경우 이 필드를 사용해 볼 수도 있습니다.
물론 pdfinfo
파일이 PDF 파일이 아닌 경우에는 오류가 반환되므로 해당 오류를 /dev/null
.
Simple Scan을 사용하여 문서를 스캔하고 pdfinfo
반환된 출력을 확인하세요.
답변3
PDF 파일의 스캔 이미지 데이터 앞에는 다음과 같은 내용이 올 가능성이 높습니다.
<</BitsPerComponent 1/ColorSpace/DeviceGray/DecodeParms<</Columns 2480/K -1>>/Filter/CCITTFaxDecode/Height 3507/Length 96349/Name/Im0/Subtype/Image/Type/XObject/Width 2480>>stream
그래서 범위를 좁혀나가기 시작했습니다 grep -Fil 'subtype/image' filenames
. 최소한 이미지가 포함되지 않은 PDF 파일은 제외됩니다.