• 【转】Linux系统产生随机数的6种方法


    1、通过系统环境变量($RANDOM)产生随机数

    [root@localhost ~]# echo $RANDOM

    3849

    [root@localhost ~]# echo $RANDOM

    14931

    [root@localhost ~]# echo $RANDOM

    12488

    [root@localhost ~]# echo $RANDOM |md5sum |cut -c 1-8  #获取8位随机字符

    2e45f930

    [root@localhost ~]# echo $RANDOM |cksum |cut -c 1-8    #获取8位随机数字

    44020023

    2、通过openssl产生随机数

    openssl rand 用于产生指定长度个bytes的随机字符

    -base64 / -hex   对随机字符串进行base64编码或用hex格式显示

    [root@localhost ~]# openssl rand -base64 10

    yNop46cVrQxNIQ==

    [root@localhost ~]# openssl rand -base64 8

    pB492c604MI=

    [root@localhost ~]# openssl rand -base64 5

    gAqEI9c=

    [root@localhost ~]# openssl rand -base64 6   #获取8位随机字符

    Ynp6VIpK

    [root@localhost ~]# openssl rand -base64 9   #获取12位随机字符

    fiZ8sfsISLNt

    [root@localhost ~]# openssl rand -base64 8 |cksum |cut -c 1-8  #获取8位随机数字

    79268014

    3、通过时间获得随机数(date)

    [root@localhost ~]# date +%s%N

    1523515467269826678

    [root@localhost ~]# date +%s%N

    1523515470209375226

    [root@localhost ~]# date +%N

    967517148

    [root@localhost ~]# date +%s

    1523515480

    [root@localhost ~]# date +%N |cut -c 1-8   #获取8位随机数字

    48604877

    4、使用/dev/urandom产生随机数

    [root@localhost ~]# head /dev/urandom | cksum

    4079719468 1897

    [root@localhost ~]# head /dev/urandom | cksum

    335118151 3245

    [root@localhost ~]# head /dev/urandom | cksum

    2907270140 3053

    5、使用计算机生成的uuid码产生随机字符

    [root@localhost ~]# cat /proc/sys/kernel/random/uuid

    9db39860-5e2f-46c0-8198-d40d551a1402

    [root@localhost ~]# cat /proc/sys/kernel/random/uuid

    d158d445-abdc-4909-81da-7bafae83cce1

    [root@localhost ~]# cat /proc/sys/kernel/random/uuid |cut -c 1-8   #获取8位随机字符

    1c5ad58a

    [root@localhost ~]# cat /proc/sys/kernel/random/uuid |cut -c 1-8   #获取8位随机字符

    d332cf7f

    6、安装软件expect,然后使用命令mkpasswd生成随机字符

    [root@localhost ~]# yum -y install expect

    [root@localhost ~]# mkpasswd -l 8

    6cvHu1P_

    [root@localhost ~]# mkpasswd -l 8

    g7jR3!Lt

    [root@localhost ~]# mkpasswd -l 8

    Y9wCwk4-

    [root@localhost ~]# mkpasswd

    h8{o4wVWf

    [root@localhost ~]# mkpasswd

    9bnI&zD4u

    [root@localhost ~]# mkpasswd|md5sum

    d9fabd642a8d4e260c95604bdd7d9cea  -

    [root@localhost ~]# mkpasswd|md5sum

    c5ddd81803a9308bcf31999c2441c5d9  -

    原文:https://www.icode9.com/content-3-136220.html

  • 相关阅读:
    线段拟合(带拉格朗日乘子,HGL)
    工作到位的标准
    Git的简单使用
    位移
    java日期格式化(util包下转成sql包下)
    java中继承的概念
    工作流驳回到指定连线节点上
    年终个人总结
    实现多条件查询 匹配数据库字段中多个数据
    activiti和SSH项目做整合
  • 原文地址:https://www.cnblogs.com/uncleyong/p/16228057.html
Copyright © 2020-2023  润新知