한 번에 여러 파일의 암호를 해독하고 gpg 상태를 확인하여 일관성을 확인하고 싶습니다. 문제는 --output 옵션을 --multiline 매개변수와 함께 사용할 수 없으며 일반적인 STDOUT 리디렉션이 무시된다는 것입니다.
find -name '*.gpg' | gpg --multifile --decrypt >/dev/null
리디렉션은 무시됩니다. 일반 파일이 생성됩니다.
>find -name '*.gpg' | gpg --multifile --decrypt --output=/dev/null
gpg: --output doesn't work for this command
단일 gpg 호출로 이를 어떻게 달성할 수 있습니까?
답변1
gpg --decrypt
이는 파일당 한 번만 호출하면 됩니다.
find . -type f -name '*.gpg' \
-exec gpg --decrypt --output /dev/null {} ';'
이 --output
옵션은 와 호환되지 않습니다 --multifile
.
답변2
Bash >= 4.0을 사용한다고 가정합니다.
shopt -s nullglob
shopt -s globstar
for file in ./**/*.gpg; do
gpg --decrypt --output=/dev/null "$file"
done