将一个 PDF 文档快速附加(合并)到 50,000 个其他文档中
Quickly append (merge) a PDF document onto 50,000 other documents
我们每月有 50,000 份文档需要在末尾附加一个不同的 pdf。
我有一个 powershell 脚本,它循环遍历 50,000 个列表并调用 PDFtk 来合并它们。但即使在具有高 RAM 的机器上,这也需要花费很多小时。
代码的核心是这样的:
foreach ($pdf in $filelist){
<#Get all variables#>
...
$merge = '"' + $TKPath + '" "' + $FirstPDFPath + '" "' + $SecondPDFPath + '" cat output "' + $OutputPDFPath + '"'
cmd.exe /c $merge
}
这是 PDFtk 的问题吗?还是我在循环内调用 cmd.exe /c
引起了问题?我可以不通过某种方式调用 PDFtk 吗?我从来没有让它工作过。
启动 50K cmd.exe
个进程肯定会带来一些开销。
您可以尝试使用 &
调用运算符直接从 powershell 调用 pdftk
:
& $TKPath $FirstPDFPath $SecondPDFPath cat output $OutputPDFPath
我们每月有 50,000 份文档需要在末尾附加一个不同的 pdf。
我有一个 powershell 脚本,它循环遍历 50,000 个列表并调用 PDFtk 来合并它们。但即使在具有高 RAM 的机器上,这也需要花费很多小时。
代码的核心是这样的:
foreach ($pdf in $filelist){
<#Get all variables#>
...
$merge = '"' + $TKPath + '" "' + $FirstPDFPath + '" "' + $SecondPDFPath + '" cat output "' + $OutputPDFPath + '"'
cmd.exe /c $merge
}
这是 PDFtk 的问题吗?还是我在循环内调用 cmd.exe /c
引起了问题?我可以不通过某种方式调用 PDFtk 吗?我从来没有让它工作过。
启动 50K cmd.exe
个进程肯定会带来一些开销。
您可以尝试使用 &
调用运算符直接从 powershell 调用 pdftk
:
& $TKPath $FirstPDFPath $SecondPDFPath cat output $OutputPDFPath