shell中的散列密碼(sha512)破壞了密碼。 如何在一行中獲得結果?如何從輸出中刪除換行符?
哈希計算的腳本:
xwtd2ev7b1HQnUEytxcMnSB1CnhS8AaA9lZY8DEOgQBW5nY8NMmgCw6UAHb1RJXB
afwjAszrMSA5JxxDRpUH3A==
應該是一條線:
password="abc123"
hashPassw="$(/bin/echo -n "${password}" | openssl dgst -binary -sha512 | openssl enc -base64)"
echo "${hashPassw}"
輸出是(爲什麼打破行?)
xwtd2ev7b1HQnUEytxcMnSB1CnhS8AaA9lZY8DEOgQBW5nY8NMmgCw6UAHb1RJXBafwjAszrMSA5JxxDRpUH3A==
我的腳本創建密碼的哈希 - 爲用戶proftpd的。 帶有虛線的密碼不授權用戶。 我不知道base64可能會破壞。 – kpietru
@kpietru:僅供參考,Base64的主要目的是爲電子郵件傳輸編碼二進制數據,這就是換行的起源。 – DevSolar