Ich habe viele Dateien verschlüsselt mitgpg. Alle Dateien haben das gleiche Passwort. Ist es möglich, Dateien mit xargs zu entschlüsseln?
ls | xargs -n 1 gpg
fragt für jede Datei nach dem Passwort.
Antwort1
LaufenGPG-Agentoder ein ähnliches Programm. Richten Sie gpg so ein, dass es nach einem laufenden Agenten sucht, wie in der Dokumentation beschrieben. Geben Sie die Passphrase ein für alle Mal (für diese Sitzung) in den Agenten ein.
Beachten Sie, dass dies ls | xargs -n 1 gpg
nur funktioniert, wenn Ihre Dateinamen keine Sonderzeichen enthalten. Im Allgemeinen gilt:Analysieren Sie nicht die Ausgabe vonls
und xargs
ist sinnlos, wenn Sie das Programm einmal pro Datei ausführen möchten. Gehen Sie stattdessen folgendermaßen vor:
for x in *.gpg; do gpg "$x"; done
Antwort2
Du kannst das :
for i in *; do
/usr/bin/gpg --batch --passphrase-fd 3 --decrypt $i 3<pass > $i.decoded ;
done
Wenn „Pass“ ein vollständiger Pfad zu einer Datei ist, die Ihre Passphrase enthält.
Die Dateien werden in [gleicher Name].decoded dekodiert.