Расшифровать файлы, зашифрованные с помощью gpg, используя xargs

Расшифровать файлы, зашифрованные с помощью gpg, используя xargs

У меня много файлов зашифровано с помощьюгпг. Все файлы имеют одинаковый пароль. Можно ли использовать xargs для расшифровки файлов?

ls | xargs -n 1 gpgзапрашивает пароль для каждого файла.

решение1

Бегатьgpg-агентили подобную программу. Настройте gpg для поиска работающего агента, как описано в документации. Введите парольную фразу в агенте один раз и навсегда (для этого сеанса).

Обратите внимание, что это ls | xargs -n 1 gpgработает только в том случае, если имена файлов не содержат специальных символов. В общем,не анализировать выводls, и xargsбессмысленно, когда вы хотите запустить программу один раз для каждого файла. Вместо этого сделайте следующее:

for x in *.gpg; do gpg "$x"; done

решение2

Вы можете сделать это :

for i in *; do 
  /usr/bin/gpg --batch --passphrase-fd 3  --decrypt $i 3<pass > $i.decoded ; 
done

Где «pass» — это полный путь к файлу, содержащему вашу парольную фразу.

Файлы будут декодированы в [то же имя].decoded.

Связанный контент