【问题标题】:How to decrypt multiple pdf files using qpdf?如何使用 qpdf 解密多个 pdf 文件?
【发布时间】:2014-09-11 23:32:10
【问题描述】:

我有一些 n 数量的 pdf 文件是安全的(即没有密码保护,但所有者保护)。我能够使用 _ 一次解密单个 pdf Windows 中 Cmd Promt 中的“qpdf --decrypt Input.pdf Output.pdf”。 你能帮我用批处理文件或从 cmd 提示符对多个 pdf 做同样的事情吗?

【问题讨论】:

    标签: batch-file powershell cmd window


    【解决方案1】:
    #!/bin/bash
    # unprotect multiple pdf files in a directory with qpdf 10Jan20
    # run the script from the same directory as the files
    if [ -d output ];
    then
        echo "output directory exists"
    else
        mkdir output
    fi
    
    
    yourfilenames=`ls *.pdf`
    #echo yourfilenames
    for eachfile in $yourfilenames
    do
       echo $eachfile
        qpdf --decrypt $eachfile    output/$eachfile
    done
    

    【讨论】:

      【解决方案2】:

      如果您只想从 shell (cmd.exe) 运行命令,您可以在包含 PDF 的目录中执行以下操作:

      for %a in ("*.pdf") do "c:\Programs\qpdf\bin\qpdf.exe" --decrypt "%a" "%~dpna.decrypted.pdf"

      【讨论】:

        【解决方案3】:
        @echo off
        
            setlocal enableextensions disabledelayedexpansion
        
            if not exist output\ md output
            for %%a in (*.pdf) do qpdf --decrypt "%%~fa" "output\%%~nxa"
        

        在当前目录下创建一个输出文件夹。然后对于当前文件夹中的每个 pdf 调用 qpdf 进行解密,将输入文件 (%%~fa) 和输出文件的完整路径作为参数传递,即输出文件夹后跟正在处理的文件的名称和扩展名 ( %%~nxa)

        【讨论】:

        • 谢谢@MC ND,它非常好..再次感谢您的帮助。
        【解决方案4】:

        试试这个:将所有 pdf 文件放在一个文件夹中,然后使用 cmd 提示导航到该文件夹​​。 执行以下命令:

        mkdir output
        qpdf --decrypt *.pdf output/*.pdf
        

        【讨论】:

        • 您好,我收到以下错误“qpdf: unknown argument chap3.pdf Usage: qpdf [options] infile outfil 如需详细帮助,请运行 qpdf --help” 我有一些名为 chap1 的 5 个 pdf - 5..可能是什么问题..感谢您的回答@Casper
        • 啊,这是我的错。它是 'qpdf --decrypt *.pdf 输出',如果这不起作用,请尝试 'qpdf --decrypt *.pdf *.decrypted.pdf'
        • 即使在尝试使用这两个命令后它再次显示相同的错误.."qpdf: unknown argument chap3.pdf Usage: qpdf [options] infile outfile 如需详细帮助,请运行 qpdf --help"跨度>
        • 啊糟糕的应用程序实现..尝试'for /r %i in (*) do qpdf --decrypt %i output/' 如果不工作'for /r %i in (*) do qpdf --decrypt %i 输出/%i'
        • 当我使用 'for /r %i in () do qpdf --decrypt %i output/' 时,它会抛出一个错误,说'打开输出/:权限被拒绝',当我运行时'for /r %i in () do qpdf --decrypt %i output/%i' 它再次抛出错误说'open output/F:***\pd\chap1.pdf: Invalid argument'
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-12-14
        相关资源
        最近更新 更多