Ich möchte die folgende Bash-Funktion so schreiben, dass sie ihre Eingabe entweder von einem Argument oder einer Pipe akzeptiert:
b64decode() {
echo "$1" | base64 --decode; echo
}
Gewünschte Verwendung:
$ b64decode "QWxhZGRpbjpvcGVuIHNlc2FtZQ="
$ b64decode < file.txt
$ b64decode <<< "QWxhZGRpbjpvcGVuIHNlc2FtZQ="
$ echo "QWxhZGRpbjpvcGVuIHNlc2FtZQ=" | b64decode
base64undbashkann das alles sowieso. Warum eine Funktion schreiben, um die Verwendung der Option-doder zu vermeiden--decode? wenn du wirklich etwas haben musst,b64decodedannalias b64decode='base64 --decode'.b64dwäre allerdings kürzer und würde noch mehr tippen sparen.