當爲一個用戶生成密碼的時候,還相對容易些,如果一下子爲N多用戶生成隨機密碼,如果手動再去生成將是一個很大的工作量,此時我們可以使用腳本來實現這樣的功能。
這裏可以定義密碼的長度,需要生成密碼的用戶列表,及密碼本(即最終的密碼需要包含什麼的字符)
[root@TKE/DEVEL_NEW shscripts]# more random_passwd.sh #!/usr/bin/env bash ## created by James.Liu at 2014-04-17 ## desc : generate random password for each user ## define password file CHARS=(a b c d e f g h i j k l m n o p t 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 0 1 2 3 4 5 6 7 8 9 + -) ## define user list USER_LIST=(user1 user2 user3 ... userN) ## set password is empty at first PASSWD='' ## define length of password PASS_LED=9 ## password file length CHARS_LEN=${#CHARS[@]} ## define function to get password get_passwd() { for((i=0;i<${PASS_LED};i++)) do PASSWD+=${CHARS[$((RANDOM%${CHARS_LEN}))]} done echo ${PASSWD} } ## set password for each user for ((j=0;j<${#USER_LIST[@]};j++)) do echo "${USER_LIST[j]}=`get_passwd`" >>./USER_PASSWD_`date +%Y%m%d%H%M%S` done
最終的效果如下:
[root@TKE/DEVEL_NEW shscripts]# cat USER_PASSWD_20140417154723
user1=zO++-vlke
user2=r8JRtoGTp
user3=t1grYrEtR
....
userN=XE+jrK737