Executando verificação de segurança...
1

Vou dar uma contribuição para arquivos JPEG com imagens, usando um arquivo CSV com uma lista de nomes, um nome por linha, na verdade nem precisaria ser CSV.

#!/bin/bash

#Passo 1: Criar arquivo temporário
#Passo 2: Converter JPEG para Texto.
#Passo 3: Pesquisar se no arquivo tem o texto do csv
#Passo 4: Endireitar o texto
#Passo 5: Converter para pdf pesquisavel
#Passo 6: Salvar com o novo nome

#variaveis
#OBS criar uma pasta chamada resultados. 
#Colocar as imagens na pasta image
#precisa de um arquivo de texto chamado data.csv com nomes em cada linha

INPUT=data.csv
IFS=,


#Passo1
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd)"
WORK_DIR=`mktemp -d -p "$DIR"`
if [[ ! "$WORK_DIR"  || ! -d "$WORK_DIR" ]]; then
    echo "Não foi criado o diretório temporario"
    exit 1
fi

function cleanup {
    rm -rf "$WORK_DIR"
    echo "Diretório temporário está sendo deletado: $WORK_DIR"
}

trap cleanup EXIT

tessedit_char_whitelist=ABCDEFGHIJKLMNOPQRSTUVWXYZ%/-15 > out

#Passo2

for i in image/*
do
   if [ -f "$i" ]; then
    tesseract "$i" "$WORK_DIR/${i##*/}
    echo $(sed ':a;N;$!ba;s/\n/ /g' "$WORK_DIR/${i##*/}.txt") > "$WORK_DIR/${i##*/}.txt"
   fi
done

#Passo3
[ ! -f $INPUT ] && { echo "$INPUT file not found"; exit 99; }
while read col1
do 
    for i in $WORK_DIR/*.txt
    do
        string=`cat "$i" | tr "\n" " "`
        cola=`echo $col1 | sed 's/\\r//g'`
        min=1
        colm=${cola^^}
        colmt=`echo $colm | sed 's/ *$//g'` 
        if quant=$(grep -c "$colmt" $i); then
            if [ "$quant" -ge "$min" ]; then
                dir1="${i%.txt}"
                dir2="image/${dir1##*/}
            #passo4
                if [ ! -f "resultado/${i##*/}-$cola.pdf" ]; then
                    convert "$dir2" -deskew 40% "$WORK_DIR/$(basename -- $dir2)"
                
                #passo5
                    tesseract "$dir1" "$dir1" -l por --psm 1 pdf
                #passo6
                    cp "$dir1.pdf" "resultado/${i##*/}-$cola.pdf"
                fi
            fi
        fi
    done
done < $INPUT
Carregando publicação patrocinada...