文章目录

  • 第一种:借助环境变量$RANDOM
    • 1. 产生0-25范围内的数,用这个环境变量对26取余即可。
    • 2. 产生6位数的整数,用这个环境变量加上100000即可。
    • 3. 产生加密的随机数码,将随机数管道给命令md5sum命令即可。
    • 4. 需要固定位数的随机数码,将随机数管道给命令md5sum命令再管道给cut命令即可。
  • 第二种:通过openssl产生随机数
  • 第三种:通过时间命令date产生随机数
  • 第四种:借助/dev/urandom设备
  • 第五种:通过/dev/random设备产生uuid
  • 第六种:expect非交互式程序控制下用mkpasswd命令

第一种:借助环境变量$RANDOM

[root@myhost ~]# echo $RANDOM
14535##说明:linux系统下的环境变量$RANDOM的取值范围是:0–32767 。
1. 产生0-25范围内的数,用这个环境变量对26取余即可。
[root@myhost ~]# echo $(($RANDOM%26))
6[root@myhost ~]# echo $((RANDOM%26))
11##说明:第二个表达式RANDOM前面无$符号好像也可以。
2. 产生6位数的整数,用这个环境变量加上100000即可。
[root@myhost ~]# echo $(($RANDOM+100000))
117482[root@myhost ~]# echo $((RANDOM+100000))
126058##说明:第二个表达式RANDOM前面无$符号好像也可以。
3. 产生加密的随机数码,将随机数管道给命令md5sum命令即可。
[root@myhost ~]# echo $RANDOM |md5sum
6ee8cd13547eb044ad13ba014573af6f  -
4. 需要固定位数的随机数码,将随机数管道给命令md5sum命令再管道给cut命令即可。
[root@myhost ~]# echo $RANDOM |md5sum|cut -c 1-8
de3cfe23

第二种:通过openssl产生随机数

[root@myhost ~]# openssl rand -base64 3
xsSp[root@myhost ~]# openssl rand -base64 8
8SlHCsBAiYw=[root@myhost ~]# openssl rand -base64 10
nUzBw8ngKGGqWw==

第三种:通过时间命令date产生随机数

[root@myhost ~]# date +%s
1539071518[root@myhost ~]# date +%N
801398716[root@myhost ~]# date +%s%N
1539071555311467855

第四种:借助/dev/urandom设备

[root@myhost ~]# head /dev/urandom|cksum
695854102 2295

第五种:通过/dev/random设备产生uuid

[root@myhost ~]# cat /proc/sys/kernel/random/uuid
a3dfb0f2-f893-4e57-9d67-184a88d4cb5d[root@myhost ~]# cat /proc/sys/kernel/random/uuid |cut -c 1-8
b80c60d8

第六种:expect非交互式程序控制下用mkpasswd命令

[root@myhost ~]# yum install -y expect[root@myhost ~]#  mkpasswd   -l 3
impossible to generate 3-character password
with 2 numbers, 2 lowercase letters, 2 uppercase letters and 1 special characters.##说明:这种方法产生的密码必须大于等于7位,因为至少需要满足:2数字+2小写字母+2大写字母+1特殊字符[root@myhost ~]#  mkpasswd   -l 7
6d)Iz9N[root@myhost  ~]#  mkpasswd  -l 8
7BI*g6be

https://blog.csdn.net/u011500307/article/details/27203865

Linux下产生随机数码的多种方法相关推荐

  1. linux自动生成mac地址,Linux自动生成MAC地址的多种方法

    Linux自动生成MAC地址的多种方法 Linux下生成MAC地址的方法有很多种,除了常见的shell生成法外,还能通过Perl.ruby等方法来生成MAC地址,下面小编对MAC地址的自动生成方法做了 ...

  2. linux安装ati工具,Linux下ATI驱动安装傻瓜安装方法

    Linux下ATI驱动安装傻瓜安装方法 发布时间:2006-01-04 12:58:15来源:红联作者:zz123 菜鸟我刚刚接触Debian不久(其实时间也不短了,但是没有深研究),在各位前辈的指导 ...

  3. linux查看mysql连接日志文件,linux下查看mysql日志文件的方法

    查看mysql日志方法: mysql默认不允许我们查看日志.需要更改一些设置 1 vi 更改配置文件 允许用户查看日志文件 sudo vi /etc/mysql/mysql.conf.d/mysqld ...

  4. Linux下分割与合并文件的方法

    Linux下分割与合并文件的方法 切割合并文件在linux下用split和cat就可以完成.下面举些实例进行说明. 1.文件切割 文件切割模式分为两种: 文本文件 二进制模式. 1.1文本模式 文本模 ...

  5. [转]Linux下pppoe配合Drcom插件上网方法介绍......

    Linux下pppoe配合Drcom插件上网方法介绍 近几天在西邮bbs上闲逛,无意间注意到很多人纠结于同一个问题---linux上网,众所周知,linux系统在宿舍上网时比较烦人的一件事,虽然bbs ...

  6. linux看php安装路径,linux下查找php安装路径的方法是什么

    linux下查找php安装路径的方法是什么 发布时间:2020-09-01 16:06:19 来源:亿速云 阅读:72 作者:小新 这篇文章主要介绍了linux下查找php安装路径的方法是什么,具有一 ...

  7. windows、linux下命令行登录oracle数据库方法,查询sga参数值sql语句

    windows 下 cmd 命令行登录 oracle 数据库方法.直接就登录进来了. C:\Users\Administrator>sqlplusSQL*Plus: Release 11.2.0 ...

  8. Linux下找出吃内存的方法总结

    linux下查询进程占用的内存方法总结,假设现在有一个「php-cgi」的进程 ,进程id为「25282」.现在想要查询该进程占用的内存大小.linux命令行下有很多的工具进行查看,现总结常见的几种方 ...

  9. linux spyder 目录,linux下创建spyder桌面图标的方法

    linux下创建spyder桌面图标的方法 发布时间:2020-07-20 11:08:41 来源:亿速云 阅读:96 作者:清晨 小编给大家分享一下linux下创建spyder桌面图标的方法,希望大 ...

最新文章

  1. 2007年你必须学习的10项.NET技术
  2. java 8 lambda表达式
  3. .Net使用SignalR实现消息推送功能预研及Demo
  4. boost::callable_traits的is_invocable的测试程序
  5. PL/SQL: Stop Making the Same Performance Mistakes
  6. C++ opengl GL_LINE_STRIP的绘制
  7. 已知数组存放一批QQ号码,QQ号码最长为11位,最短为5位String[] strs = {“12345“,“67891“,“12347809933“,“98765432102“,“67891“,“1
  8. 在CentOS中安装NodeJS
  9. 普华基础软件笔试_【2019更新版】中国人民大学计算机软件考研信息汇总
  10. Unity3D基础23:TrailRenderer特效
  11. 三层结构中的数据层设计
  12. 面向对象和结构化程序设计的区别
  13. quartus仿真13:D触发器和JK触发器
  14. 百度云链接后的html,百度云链接失效,这样就能找回!
  15. 番茄时间法--2018年1月26号
  16. 海康流媒体客户端开发
  17. 再见python你好go语言_再见,Python!你好,Go语言
  18. Vue watch 监听复杂对象变化,oldvalue 和 newValue 一致的解决办法。
  19. 笔记本电池电量保持在50~55%可延长电池寿命
  20. hdoj 4417 Super Mario 【树状数组 + 思维】

热门文章

  1. React框架简介(JSX语法、组件、虚拟DOM渲染)
  2. 车道线检测:ultra fast lane detection + 车道保持
  3. 物联网最常见的5个核心关键技术与2种技术难点
  4. 成都新会展中心招聘会——IT软件行业缺口大
  5. C++ 操作承载网络/虚拟网卡
  6. 基于台达PLC的水箱液位PID控制(matlab处理数据)
  7. 关于机油标号的含义和正确使用
  8. VK1668带键盘扫描接口的LED(发光二极管显示器)驱动控制IC功能及作用介绍
  9. 泛在电力物联网技术及战略解读:一个战略 两个领域 三个阶段
  10. t30什么时间升级鸿蒙,性能升级富士旗舰无反X-T3新固件发布