关键词:RANDOM(必须大写)、md5sum、chsum、cut
- echo $RANDOM:会出现五位系统随机数字
- md5sum:字符串加密,出现32位字符串。
- cut:截取命令
- chsum:校验文件的CRC,校验后出现10位数字
脚本如下:
#!/bin/bash #获取随机数(8位) echo "获取随机8位字符串:" echo "方法一:echo $RANDOM |md5sum |cut -c 1-8" echo $ANDOM |md5sum |cut -c 1-8 echo "" echo "方法二:openssl rand -base64 4" str2=$( openssl rand -base64 4 ) echo $str2 echo "" echo "方法三:cat /proc/sys/kernel/random/uuid |cut -c 1-8" str3=$( cat /proc/sys/kernel/random/uuid |cut -c 1-8 ) echo $str3 echo "" echo "获取随机8位数字:" echo "" echo "方法一:echo $RANDOM |cksum |cut -c 1-8" echo $RANDOM |cksum |cut -c 1-8 echo "" echo "方法二:openssl rand -base64 4 |cksum |cut -c 1-8" num2=$( openssl rand -base64 4 |cksum |cut -c 1-8 ) echo $num2 echo "" echo "方法三:date +%N |cut -c 1-8" num3=$( date +%N |cut -c 1-8 ) echo $num3 echo ""
实现效果(每次执行都可以获取不同的数):
[root@test tansk]# ./test.sh 获取随机8位字符串: 方法一:echo 3477 |md5sum |cut -c 1-8 68b329da 方法二:openssl rand -base64 4 Uum/Lg== 方法三:cat /proc/sys/kernel/random/uuid |cut -c 1-8 16c58d21 获取随机8位数字: 方法一:echo 28957 |cksum |cut -c 1-8 45083110 方法二:openssl rand -base64 4 |cksum |cut -c 1-8 33717621 方法三:date +%N |cut -c 1-8 32302868 [root@test tansk]#
来源:https://www.cnblogs.com/tanshouke/p/12405267.html