Gpg

如何使用 gpg 解密目錄中的多個文件?

  • August 23, 2021

我有一個包含多個 .gpg 文件的目錄,所有文件都使用相同的密碼進行加密。如何在不一遍又一遍地輸入密碼的情況下將它們全部解密?

似乎這可以解決問題:

gpg --decrypt-files *.gpg

如果有一天您需要這些行來編寫解決方案的腳本

#!/usr/bin/env bash
_dir="/some/directory"
_paraphrase=( "$@" )
Decrypt(){
   _pass=( "$@" )
   for _file in $(ls "${_dir}"); do
       case "${_file}" in
           *.gpg)
               echo "${_pass[*]}" | gpg --always-trust --passphrase-fd 0 --decrypt ${_file} --output ${_file%.gpg*}
           ;;
       esac
   done
   unset _pass
}
Decrypt "${_paraphrase[*]}"
unset _paraphrase

一些類似的程式碼在我的個人 GnuPG 腳本中工作得很好,這些腳本必須在沒有人工互動的情況下解密。然而,接受的答案 gpg --decrypt-files *.gpg要安全得多,因為 GnuPG 是唯一處理您的密碼的應用程序。

引用自:https://serverfault.com/questions/388067