【发布时间】:2021-11-06 09:55:49
【问题描述】:
我将通过 sFTP 接收来自客户的 PGP 加密文件 - 我已经有一个自动提取文件的流程。收到加密文件后,我想自动解密。
我使用 GoAnywhere OpenPGP Studio 创建了一个密钥对(公钥将交给客户)。我想在批处理文件脚本中使用私钥和密码短语,该脚本将作为 Windows 任务计划程序中的计划任务运行。这是我的脚本:
gpg --keyring "C:\UserFolder\.openpgpstudio\keys\pubring.pkr" --secret-keyring "C:\UserFolder\.openpgpstudio\keys\secring.skr" --batch --yes --passphrase-fd "secretPassPhrase" -o "D:\FilePath\testPGP.txt" -d "D:\FilePath\testPGP.txt.pgp"
exit
当我尝试运行我的脚本时,仍然需要一些手动步骤来解密文件 - 我遇到了几个问题:
- 执行批处理文件时,会打开一个命令提示符窗口,其中包含与批处理文件中相同的脚本。要进行解密并输出文本文件,我必须按 Enter。这不是自动的,会导致计划任务卡住。
- 即使我使用
--passphrase-fd选项,有时仍会提示我输入密码 - 此密码弹出窗口还会导致计划任务卡在运行。
有没有办法绕过这两个手动步骤,让我的脚本完全自动化?
后续问题:-d 选项是否接受通配符,以便我可以解密任何找到的带有 .pgp 扩展名的文件,我是否能够使用 -o 选项输出一个 .txt 文件与 .pgp 文件同名?
【问题讨论】: