Linux 命令行生成密码的 10 种方式

内容来自: 10 Ways to Generate a Random Password from the Linux Command Line 

Linux 好玩的事儿是达成一件事情可以用上百种方式. 即使如生成随机密码这么简单的需求都可以用一打的命令来实现.

这些命令从 Command-Line Fu 搜集而来, 而且都在 Linux 上验证了这些命令没有问题.

生成密码

对于这些生成随机数的命令, 可以调整以输出不同长度的密码. 当然, 你可以使用第一个 x 符号来生成密码, 如果你不需要这么长的密码. 好在有类似于 LastPass 这样的密码管理工具, 我们不再需要痛苦的记忆各种密码了.

**1. 将日期结果做 hash 运算 **

 date +%s | sha256sum | base64 | head -c 32 ; echo


2. 使用 openssl 的 rand 函数

openssl rand -base64 32


3. 使用 /dev/urandom

 < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-32};echo;


4. 使用 /dev/urandom

 tr -cd '[:alnum:]' < /dev/urandom | fold -w30 | head -n1


5. 使用 string 命令 + /dev/urandom

strings /dev/urandom | grep -o '[[:alnum:]]' | head -n 30 | tr -d '\n'; echo


6. 使用 /dev/urandom

 < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c6


7. 使用 dd 命令

dd if=/dev/urandom bs=1 count=32 2>/dev/null | base64 -w 0 | rev | cut -b 2- | rev


8. 创建一个只需要左手就可以输入的密码

 '12345!@#$%qwertQWERTasdfgASDFGzxcvbZXCVB' | head -c8; echo ""


9. 可以把生成密码的命令写成函数,保存在 ~/.bashrc 内,这样可以方便下次生成密码

randpw(){ < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-16};echo;} 

需要生成密码的时候, 可以在 CLI 执行: randpw 即可生成密码.

10. md5sum

 date | md5sum

原文出处:百度站长

你可能感兴趣的:(Linux 命令行生成密码的 10 种方式)