从指定字符集和中生成随机字符串
第一种方法:
#!/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 [root@10-6-8-200 test]# bash ran.sh 3p00sgrDT
第二种方法:
# vi 1.sh #!/bin/bash len=9 #str=(a b c d e f g h i j k l m n o p q r s t u v w x y z 1 2 3 4 5 6 7 8 9 0) str=(a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 1 2 3 4 5 6 7 8 9 0 \! \@ \# \$ \% \^ \& \* \( \) \- \_ \= \+ \\ \/ \' \" \; \: \[ \] \{ \} \, \. \?) for((i=1;i<=$len;i++));do arr[$i]=${str[$[$RANDOM%87]]} done; echo "${arr[@]}"|tr -d " " # bash 1.sh x7*hMrH}Y
转载于:https://blog.51cto.com/charlie928/1344121