使用我自己的密钥进行 gpg 批量加密,无需键盘交互

gpg batch-encryption with my own key without keyboard interaction

我需要在网络服务器上保存几个文件,并希望之前用我自己的 public 密钥对它们进行加密。

因此我只写了一个简单的bash脚本:

#!/bin/bash  

ls *.7z > filelist.txt

while read currow
do
 gpg --encrypt -ac --recipient myemail@example.com $currow

done < filelist.txt
rm filelist.txt

但这实际上行不通。对于每个文件,我都会收到此对话框,我必须在其中输入密码(两次)。

我怎样才能避免这种情况? 谢谢

您正在使用 -c 选项,它是长 --symmetric 选项的短等效项。您 通过使用此选项使用 public 密钥加密,这就是要求您输入密码的原因。

尝试将上面脚本中的 -ac 更改为 -a