详解Linux如何生成随机数字和字符串
2018-08-09 10:44
1086 查看
生成随机数字
1.使用系统的$RANDOM变量
> echo $RANDOM 14587
2.使用date +%s%N
> date +%s%N 1529584024896587259
3.使用/dev/random 或 /dev/urandom
/dev/random存储着系统当前运行环境的实时数据,是阻塞的随机数发生器,读取有时需要等待,尽量避免使用。
/dev/urandom非阻塞随机数发生器,读取操作不会产生阻塞。
> cat /dev/urandom | head -n 10 | cksum | awk -F ' ' '{print $1}' 1198074148
生成随机字符串
1.使用linux uuid,uuid全称是通用唯一识别码,格式包含32个16进制数字,以'-'连接号分为5段。形式为8-4-4-4-12 的32个字符。
> cat /proc/sys/kernel/random/uuid 6fcae1aa-ab46-435a-8531-250ccb54ed8e
2.使用md5sum
#使用date 生成10位随机字符串 > date +%s%N | md5sum | head -c 10 bb791e69d4 #使用 /dev/urandom生成10位随机字符串 > cat /dev/urandom | head -n 10 | md5sum | head -c 10 909587db4c > head -c 10 /dev/random | base64 tBIDqQcaQ+qvkA==
3.使用openssl
> openssl rand -hex 10 3822e40bdcc2d1c6ee5f
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
相关文章推荐
- JS实现生成由字母与数字组合的随机字符串功能详解
- Oracle中如何生成随机数字、随机字符串、随机日期
- C#如何生成随机不重复的数字
- RndNum 生成随机字符串,包含数字和小写字母
- Java生成随机字符串,必须包含数字、小写字母、大写字母
- C#如何生成随机不重复的数字
- [C#]生成一串包含字符和数字的随机字符串的方法
- 如何用jsp页面生成随机的验证数字码
- DELPHI生成32位随机字符串(数字和大写字母混合)
- 如何使用VBA生成随机字符串
- Excel生成随机字符串(数字大小写混合)
- [C#]生成一串包含字符和数字的随机字符串的方法
- 如何用jsp页面生成随机的验证数字码
- java 随机生成字符串 (字母和数字)
- ASP生成随机字符串(数字+大小写字母)的代码
- [C#]生成一串包含字符和数字的随机字符串的方法
- SQLServer如何快速生成100万条不重复的随机8位数字
- java验证码中的数字、字母、汉字如何随机生成
- 补充:LINUX下随机数字的生成(二)
- Java指定长度随机生成的字符串,且这个字符串必须包含大小写字母和数字