1.生成隨機密碼(urandom版本)bash
#!/bin/bash #Author:丁丁歷險(Jacob) #/dev/urandom文件是Linux內置的隨機設備文件 #cat /dev/urandom能夠看看裏面的內容,ctrl+c退出查看 #查看該文件內容後,發現內容有些太隨機,包括不少特殊符號,咱們須要的密碼不但願使用這些符號 #tr -dc 'A-Za-z0-9' </dev/urandom #該命令能夠將隨機文件中其餘的字符刪除,僅保留大小寫字母,數字,下劃線,可是內容仍是太多 #咱們能夠繼續將優化好的內容經過管道傳遞給head命令,在大量數據中僅顯示頭10個字節 #注意A前面有個下劃線 tr -dc 'A-Za-z0-9' </dev/urandom | head -c 10
2.生成隨機密碼(字串截取版本)`dom
#!/bin/bash #Author:丁丁歷險(Jacob) #設置變量key,存儲密碼的全部可能性(密碼庫),若是還須要其餘字符請自行添加其餘密碼字符 #使用$#統計密碼庫的長度 key="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" num=${#key} #設置初始密碼爲空 pass='' #循環8次,生成8爲隨機密碼 #每次都是隨機數對密碼庫的長度取餘,確保提取的密碼字符不超過密碼庫的長度 #每次循環提取一位隨機密碼,並將該隨機密碼追加到pass變量的最後 for i in {1..8} do index=$[RANDOM%num] pass=$pass${key:$index:1} done echo $pass
3.生成隨機密碼(UUID版本,16進制密碼)ide
#!/bin/bash uuidgen
4.生成隨機密碼(進程ID版本,數字密碼)優化
#!/bin/bash echo $$