Vergleichen Sie die Ausgabe dieser beiden Befehle:
echo "MjAyMS0wMS0xMy56aXA=" | base64 --decode | od -c
echo "2021-01-13.zip" | od -c
Sie werden sehen, dass base64 --decode
kein Zeilenumbruchzeichen enthält druckt (weil die Zeichenfolge, mit der Sie beginnen, anscheinend kein Zeilenumbruchzeichen codiert). In echo
befindet sich ein Zeilenumbruchzeichen druckt (weil so echo
funktioniert). Versuchen Sie jetzt Folgendes:
echo -n "2021-01-13.zip" | base64
Oder besser:
printf '%s' "2021-01-13.zip" | base64
Echo fügt standardmäßig ein abschließendes Zeilenendezeichen hinzu.
Versuchen Sie es, ohne das Zeilenende hinzuzufügen:
> echo -n "2021-01-13.zip" | base64
MjAyMS0wMS0xMy56aXA=