shell怎么生成二十位的随机字符串

发布时间:2020-11-24编辑:脚本学堂
shell怎么生成二十位的随机字符串,shell随机字符串的生成代码,在shell脚本中使用随机函数生成指定长度的随机数的例子,供大家学习参考。

一、shell生成一个二十位的随机字符串
代码:
 

复制代码 代码示例:
#!/bin/bash
 
randstr() {
  index=0
  str=""
  for i in {a..z}; do arr[index]=$i; index=`expr ${index} + 1`; done
  for i in {A..Z}; do arr[index]=$i; index=`expr ${index} + 1`; done
  for i in {0..9}; do arr[index]=$i; index=`expr ${index} + 1`; done
  for i in {1..20}; do str="$str${arr[$RANDOM%$index]}"; done
  echo $str
}
 
echo `randstr`

二、shell 产生一个随机字符串 
代码:
 

复制代码 代码示例:
#!/bin/bash
MATRIX="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz~!@#$%^&*()_+="
LENGTH="9"
while [ "${n:=1}" -le "$LENGTH" ]
do
        PASS="$PASS${MATRIX:$(($RANDOM%${#MATRIX})):1}"
        let n+=1
done
        echo "$PASS"
exit 0

三、shell生成随机字符串,分为二种情况。
1、生成全字符随机的字串:
 

cat /dev/urandom | strings -n C | head -1

2、生成数字加字母的随机字串:
 

cat /dev/urandom | sed ’s/[^a-zA-Z0-9]//g’ | strings -n C | head -1
 

说明:其中C表示字符串的字符数。

shell生成随机数的几个例子