Mesclar arquivos PDF com nomes de arquivos relacionados automaticamente

1

Preciso mesclar / combinar vários arquivos PDF.

O que tenho são vários arquivos PDF em uma pasta. Os PDFs que precisam ser agrupados / combinados teriam um nome de arquivo parcial em comum; por exemplo:

123456_ABCD.pdf
123456_EFGH.pdf
123456_IJKL.pdf 

O nome do arquivo começaria com números, depois sublinhado e nome do arquivo. Vou ter centenas de PDFs semelhantes e estou procurando uma maneira de mesclar automaticamente esses arquivos usando um script em lote, VBA no Excel ou qualquer outra coisa.

A saída do novo arquivo deve estar em uma pasta separada com o nome 123456.pdf. Eu uso um sistema operacional Windows. Eu tenho o Adobe Reader, PDF995 e CutePDFwriter instalado no meu sistema.

Consigo obter todos os PDFs em uma pasta principal. Essa pasta teria vários PDFs, como abaixo.

123456_ABCD.pdf
123456_EFGH.pdf
123456_IJKL.pdf
111111_ABCD.pdf
111111_EFGH.pdf
222222_IJKL.pdf
222222_WXYZ.pdf

Nesse cenário, os PDFs que estou esperando na pasta de saída são:

123456.pdf
111111.pdf
222222.pdf
007MrBlackLight
fonte
Você pode adicionar mais exemplos da estrutura de pastas e de outros pdf que precisam ser mesclados separadamente?
Paul Paul
Obrigado @Paul. Consigo obter todos os PDFs em uma pasta principal. Essa pasta teria vários PDFs, como abaixo. 123456_ABCD.pdf 123456_EFGH.pdf 123456_IJKL.pdf 111111_ABCD.pdf 111111_EFGH.pdf 222222_IJKL.pdf 222222_WXYZ.pdf Nesse cenário, os PDFs que estou esperando na pasta de saída são 123456.pdf 112211.pdf Não tenho certeza se isso ajudaria, mas o nome do arquivo começaria com números e depois sublinhado. Entre em contato se precisar de mais informações.
007MrBlackLight
Não adicione novas informações em um pequeno comentário. Basta atualizar sua postagem.
Paul

Respostas:

1

(Não testado)

  1. Faça o download do pdftk ( link direto aqui ).
  2. Extraia-o em algum lugar.
  3. Coloque o pdftk.exe e o lote juntos.
  4. Em seguida, abra cmdonde o lote está localizado * e execute-o.
    * (shift + prompt de comando do RightClic aberto aqui)

O script deve funcionar se a estrutura da pasta for assim:

|
+---111111
|       111111_ABCD.pdf
|       111111_EFGH.pdf
|
+---123456
|       123456_ABCD.pdf
|       123456_EFGH.pdf
|       123456_IJKL.pdf
|
\---222222
        222222_IJKL.pdf
        222222_WXYZ.pdf

E não em uma única pasta onde todos os arquivos estão lá.

@echo off
setlocal enabledelayedexpansion

rem source root folder where to crawl pdfs.
set "source=c:\mydoc\pdf"

rem destination folder
set "destination=c:\mydoc\merged"

for /f "delims=" %%a in ('dir /b /s /ad /o:n "%source%"') do (
    set _pdffiles=
    for /f "delims=" %%i in ('dir /b /a-d /o:n "%%a\*.pdf"') do (
        set _pdffiles=!_pdffiles! "%%i"
        set "_outputpdf=%%~ni"
    )
    echo pdftk.exe !_pdffiles! cat output "%destination%\!_outputpdf:~0,6!.pdf"
)

Remova echose você achar que o lote está correto.

Resposta amplamente inspirada neste

Atualização: existem duas respostas que complementam minha postagem

Paulo
fonte