专栏首页恩蓝脚本详解Linux如何生成随机数字和字符串

详解Linux如何生成随机数字和字符串

生成随机数字

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

以上就是本文的全部内容,希望对大家的学习有所帮助。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • linux磁盘管理软RAID的实现原理分析和方法分享

    RAID全称是独立磁盘冗余阵列(Redundant Array of Independent Disks),基本思想是把多个磁盘组合起来,组合一个磁盘阵列组,使...

    砸漏
  • centos6超20TB磁盘的分区格式化的示例代码

    近期项目有个服务从虚拟机迁移到物理机,服务磁盘用户自己做了raid为3.8TB 2块磁盘配置 Raid1然后又3.8TB 6块磁盘配置了Raid5,安装操作系统...

    砸漏
  • 详解Centos7扩展磁盘空间(LVM管理)

    WARNING: Re-reading the partition table failed with error 16: 设备或资源忙. The kernel...

    砸漏
  • Linux生成随机数字和字符串

    /dev/random存储着系统当前运行环境的实时数据,是阻塞的随机数发生器,读取有时需要等待,尽量避免使用。

    JouyPub
  • linux系统编程之文件与I/O(四):文件的属性

    一、读取文件元数据 int stat(const char *path, struct stat *buf); int fstat(int fd, struc...

    s1mba
  • Nexus5 bootloader内容初探及延伸思考编译使用

    在Android启动过程分析-从按下电源键到第一个用户进程[转载]中,我们知道BootLoader是在操作系统前执行的程序,有没有很好奇它到底有些啥内容呢?

    用户2930595
  • 安装stress模拟linux系统资源消耗

    1、安装yum源:yum install epel-release -y 2、安装stress:yum install stress -y 3、使用样例:str...

    一夕如环
  • Ubuntu16.04 配置OpenCV3.4.2及基本使用

    OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效...

    FPGA开源工作室
  • mysql锁机制总结,以及优化建议

    偏向MyISAM存储引擎,开销小,加锁快;无死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。

    李红
  • 本体技术视点 | 去中心化身份即元平台:合作的力量(二)

    https://github.com/WebOfTrustInfo/rwot9-prague/blob/master/final-documents/Coope...

    本体Ontology

扫码关注云+社区

领取腾讯云代金券