У меня много файлов зашифровано с помощьюгпг. Все файлы имеют одинаковый пароль. Можно ли использовать 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.