linux 中 产生随机数
001、$RANDOM; $RANDOM用于生成0—32767的随机数
[root@PC1 test05]# echo $RANDOM 21160 [root@PC1 test05]# echo $RANDOM 17006 [root@PC1 test05]# echo $RANDOM 3979
002、产生0到2的随机数
[root@PC1 test05]# expr $RANDOM % 3 2 [root@PC1 test05]# expr $RANDOM % 3 1 [root@PC1 test05]# expr $RANDOM % 3 1 [root@PC1 test05]# expr $RANDOM % 3 0 [root@PC1 test05]# expr $RANDOM % 3 0 [root@PC1 test05]# expr $RANDOM % 3 2 [root@PC1 test05]# expr $RANDOM % 3 1
003、生成1到3的随机数
[root@PC1 test05]# expr $RANDOM % 3 + 1 3 [root@PC1 test05]# expr $RANDOM % 3 + 1 2 [root@PC1 test05]# expr $RANDOM % 3 + 1 1 [root@PC1 test05]# expr $RANDOM % 3 + 1 3 [root@PC1 test05]# expr $RANDOM % 3 + 1 1 [root@PC1 test05]# expr $RANDOM % 3 + 1 2
005、seq + sort实现,产生1到10的随机数
[root@PC1 test05]# seq 10 | sort -R | head -n 1 2 [root@PC1 test05]# seq 10 | sort -R | head -n 1 2 [root@PC1 test05]# seq 10 | sort -R | head -n 1 6 [root@PC1 test05]# seq 10 | sort -R | head -n 1 10 [root@PC1 test05]# seq 10 | sort -R | head -n 1 7
。
006、通过openssl产生随机数
[root@PC1 test02]# openssl rand -base64 8 ## 大小写字母 + 数字 + 特殊符号 Hlo0jX65N0c= [root@PC1 test02]# openssl rand -base64 8 t19f+aFmihY= [root@PC1 test02]# openssl rand -base64 8 9vMszyPf9ss=
007、通过时间(date)获取随机数
[root@PC1 test02]# date +%s%N 1690122837531629791 [root@PC1 test02]# date +%s%N 1690122838224833028 [root@PC1 test02]# date +%s%N 1690122838934584522 [root@PC1 test02]# date +%s%N 1690122840016111620
008、通过/dev/urandom配合cksum生成随机数
[root@PC1 test02]# head /dev/urandom|cksum 3214927257 2023 [root@PC1 test02]# head /dev/urandom|cksum 3501446601 3253 [root@PC1 test02]# head /dev/urandom|cksum 1543589339 2449 [root@PC1 test02]# head /dev/urandom|cksum 1027962865 3500
。
009、
[root@PC1 test02]# cat /dev/urandom | tr -dc 'a-z' | fold -w 10 | head -n 1 izxesjogfl [root@PC1 test02]# cat /dev/urandom | tr -dc 'a-z' | fold -w 10 | head -n 1 ezhitupyvv [root@PC1 test02]# cat /dev/urandom | tr -dc 'a-z' | fold -w 10 | head -n 1 hpljhfmcvc
010、
[root@PC1 test02]# mkpasswd -l 50 | tr -dc 'a-z'|cut -c 1-10 ## 产生10位随机小写字母 waywottekh [root@PC1 test02]# mkpasswd -l 50 | tr -dc 'a-z'|cut -c 1-10 gfccibonfd
011、
[root@PC1 test02]# echo $RANDOM| md5sum | tr -cd a-z | cut -c 1-10 bfebcbbfed [root@PC1 test02]# echo $RANDOM| md5sum | tr -cd a-z | cut -c 1-10 eeffafffcf [root@PC1 test02]# echo $RANDOM| md5sum | tr -cd a-z | cut -c 1-10 faefbcbdfe
。
参考:https://blog.csdn.net/Sapphire521/article/details/128324743
分类:
linux shell
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2022-07-22 linux 中awk命令同时指定多个分割符
2022-07-22 linux系统中如何将每行特定数目字符后的字符替换为指定字符
2022-07-22 linux 中如何将多行数据转换为一行数据
2022-07-22 linux 系统中如何删除行首的空格或者制表符
2022-07-22 linux 中统计每一行特定字符出现的次数
2021-07-22 linux 系统中把一列数据变为一行数据