shell - 如何从输出中删除换行符?

标签 shell

在 shell (sha512) 中散列密码打破了这一行。
如何在一行中得到结果?

哈希脚本:

password="abc123"
hashPassw="$(/bin/echo -n "${password}" | openssl dgst -binary -sha512 | openssl enc -base64)"
echo "${hashPassw}"

输出是(为什么要断线?):
xwtd2ev7b1HQnUEytxcMnSB1CnhS8AaA9lZY8DEOgQBW5nY8NMmgCw6UAHb1RJXB
afwjAszrMSA5JxxDRpUH3A==

应该是一行:
xwtd2ev7b1HQnUEytxcMnSB1CnhS8AaA9lZY8DEOgQBW5nY8NMmgCw6UAHb1RJXBafwjAszrMSA5JxxDRpUH3A==

最佳答案

来自 OpenSSL Wikienc .

To suppress this you can use in addition to -base64 the -A flag. This will produce a file with no line breaks at all.



所以添加额外的 -A flag 可以解决问题。
password="abc123"
hashPassw="$(/bin/echo -n "${password}" | openssl dgst -binary -sha512 | openssl enc -A -base64)"
echo "${hashPassw}"

哪些输出
xwtd2ev7b1HQnUEytxcMnSB1CnhS8AaA9lZY8DEOgQBW5nY8NMmgCw6UAHb1RJXBafwjAszrMSA5JxxDRpUH3A==

关于shell - 如何从输出中删除换行符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35799684/

相关文章:

带通知的 MySQL 备份脚本

linux - 在bash中同时读取两个文件

linux - 将函数的返回值保存在文件中

linux - Torrent下载完成后传输不会运行shell脚本?

shell - 如何在Windows Shell中指定当前目录?

bash - 如何在 Bash 中将变量设置为命令的输出?

linux - Xmonad,如何绑定(bind)一个键来运行一个shell脚本?

linux - 如何禁用 csh 的 precmd 输出日志到终端?

linux - Bash shell : Appending a newline after each input in a *. txt 文件

bash - 如何确定我所在的当前交互式 shell(命令行)