Linux 및 macOS에서 Base64를 디코딩하는 방법은 무엇입니까?

Linux 및 macOS에서 Base64를 디코딩하는 방법은 무엇입니까?

Linux에서는 다음과 같이 할 수 있습니다.

echo ${ANDROID_KEYSTORE} | base64 -di > android/keystores/staging.keystore

그러나 macOS에서는 동일한 명령이 다음을 제공합니다.

base64: option requires an argument -- i
Usage:  base64 [-hvDd] [-b num] [-i in_file] [-o out_file]
  -h, --help     display this message
  -Dd, --decode   decodes input
  -b, --break    break encoded string into num character lines
  -i, --input    input file (default: "-" for stdin)
  -o, --output   output file (default: "-" for stdout)

-di교체 를 사용해 보았지만 --decode --input도움이 되지 않았습니다.

  1. macOS 명령을 수정하는 방법은 무엇입니까?
  2. Linux(Debian/Ubuntu)와 macOS 모두에서 실행할 수 있는 명령이 있습니까?

답변1

이식성을 원한다면 -iLinux 스타일을 직접 구현 해야 합니다.

# don't forget to quote the variable!
echo "${ANDROID_KEYSTORE}" \
| sed 's/[^A-Za-z0-9+/=]//g' \
| base64 -d

sed 명령 삭제잘못된 문자

관련 정보