我目前有一个正在生成的密码,这是日期的哈希值.我想通过添加一些大写,小写,数字和特殊字符来增加这个生成密码的安全性,所有这些都至少10个字符的长度.
我现在拥有的是下面的内容.如您所见,它将输出分配给我的PASSWORD变量.
PASSWORD=$(date +%s | sha256sum | base64 | head -c 15)
Run Code Online (Sandbox Code Playgroud)
我不确定我是否可以内联,或者,如果我需要在我的bash脚本中创建一个函数来适应?这甚至可能吗?
提前谢谢了.
用tr和head:
password=$(tr -dc 'A-Za-z0-9!?%=' < /dev/urandom | head -c 10)
echo "$password"
Run Code Online (Sandbox Code Playgroud)
输出(例子):
k?lmyif6aE
tr读取来自Linux的特殊随机设备通过stdin字节的/ dev/urandom的,并删除所有字节/字符,但A以Z,a对z,0对9和!?%=.tr通过stdout将其输出发送到headstdin.head在10个字节后切断输出.