xargsを使用してgpgで暗号化されたファイルの復号化

xargsを使用してgpgで暗号化されたファイルの復号化

暗号化されたファイルが多すぎます。GPG。すべてのファイルのパスワードは同じです。 xargsを使用してファイルを復号化できますか?

ls | xargs -n 1 gpg各ファイルにはパスワードが必要です。

答え1

走るgpg - エージェントまたは同様のプログラム。ドキュメントの説明に従ってgpgを設定して、実行中のエージェントを見つけます。エージェントで(このセッションに対して)パスワードを一度入力します。

これはls | xargs -n 1 gpg、ファイル名に特殊文字が含まれていない場合にのみ機能します。一般的に言えば、出力を解析しません。lsxargsファイルごとに一度だけプログラムを実行したい場合は意味がありません。代わりにこれを行う:

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としてデコードされます。

関連情報