如果按计划任务运行,则在批处理文件中使用GnuPG加密文件将不起作用

时间:2015-07-24 15:16:55

标签: windows batch-file scheduled-tasks gnupg pgp

我有一个批处理文件,当我双击它时工作正常但不是我在计划任务中安排它时。我做了一些研究,我相信这是因为在计划任务程序中运行时没有设置变量。

 CD C:\PGP_Out

 Set FileToEncryp=
 FOR %%a in (list_*.txt) do set FileToEncrypt=%%a
 gpg --recipient "FTPTARGET" --output "%FileToEncrypt%.pgp" --encrypt "%FileToEncrypt%"

 CD \Program Files (x86)\WinSCP\winscp.com /script=ftp.txt

 Exit

1 个答案:

答案 0 :(得分:0)

GnuPG使用每个帐户密钥环,确保从用于开发批处理脚本的同一用户帐户运行计划任务,或者在用于计划的帐户中导入所需的密钥。您可能还想设置GNUPGHOME环境变量,但请注意GnuPG在适当的访问权限上非常挑剔。

有疑问,请在每次调用时在批处理脚本的开头运行gpg --import,以确保所需的密钥可用。