Linux的特點之一,就是給我們提供了多種選擇。一種目的,可以多種方法解決。
如何在Linux下產生隨機密碼呢?我給大家收集了10來種方法,僅供參考。用得著的就mark下。對于下面的任何命令,都可以控制輸出結果的長度。
#1
date +%s | sha256sum | base64 | head -c 32 ; echo
上述命令使用SHA來哈希日期,輸出頭32個字節。
#2
< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-32};echo;
上述命令使用內嵌的/dev/urandom,只輸出字符,結果取頭32個。
#3
openssl rand -base64 32
上述命令使用系統自帶的openssl的隨機特點來產生隨機密碼
#4
tr -cd ‘[:alnum:]‘ < /dev/urandom | fold -w30 | head -n1
#5
strings /dev/urandom | grep -o ‘[[:alnum:]]’ | head -n 30 | tr -d ‘\n’; echo
通過過濾字符命令,輸出隨機密碼
#6
< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c6
這個命令比起來比較簡單了
#7
dd if=/dev/urandom bs=1 count=32 2>/dev/null | base64 -w 0 | rev | cut -b 2- | rev
上述命令使用命令dd的強大功能
#8
</dev/urandom tr -dc ’12345!@#$%qwertQWERTasdfgASDFGzxcvbZXCVB’ | head -c8; echo “”
上述命令輸出很簡潔
#9
randpw(){ < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-16};echo;}
使用randpw隨時產生隨機密碼,可以把它放到~/.bashrc文件里面。
(我這里沒有什么密碼產生,可留言討論)
#10
date | md5sum
如果只用這一個,足夠了,因為它太簡潔了,:-)
原文鏈接:http://bentutu.com/?p=1343