从 openssl base64 编码字符串中删除换行符?

从 openssl base64 编码字符串中删除换行符?
echo -n 'HelloWorld' | openssl base64 | pbcopy

粘贴后,该命令给我一个换行符。

我认为 -n 删除了换行符,但在使用 base64 时不会删除。

那么如何才能获得没有换行符的输出字符串呢?

答案1

我确信有更简单的方法可以做到这一点,但在这里我使用 awk 并将输出记录分隔符留空。由于只有一个记录分隔符,结果将为空白。现在,我可以通过运行输出到文件并让cat -A该文件显示元字符来测试是否有换行符。

$ printf 'Hello World' | openssl base64 | awk 'BEGIN{ORS="";} {print}' > tester.txt

$ cat -A tester.txt
SGVsbG8gV29ybGQ=

如您所见,该字符串末尾没有 $ 符号,因此没有新行。

相关内容