首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

Linux 產生隨機密碼指令集:/dev/urandom 與 UUID 兩種方法

     編輯:MySQL 資料庫相關知識

Linux 環境下快速產生高強度隨機密碼的兩種實用指令。

方法一:/dev/urandom + tr + fold + head(可批量產生)

僅英數字(字母+數字)

cat /dev/urandom | LC_ALL=C tr -dc "[:alnum:]" | fold -w 10 | head -10

輸出範例

Si1N9kUyuZ
ddzsRXFgxA
caDRBRT4Px
buGk6LkX4d
N5Xod1TOyr
1645cBxAjl
KRjwJR2Txu
nhQedXagL9
RraDEZgfhY
QxCurm5eZF

含特殊符號(可列印字元)

cat /dev/urandom | LC_ALL=C tr -dc "[:graph:]" | fold -w 10 | head -10

輸出範例

y#@uDo.g-w
RP\oq.8?)e
2R~CCIsLPr
*/V4"%H9WE
!iP2Jj:vqL
zb!w}DZ|lN
2*%|/;X$?>
R7;-Bam|~L
Ps83,_`8Xz
C?mnpUzn*I

參數說明

  • cat /dev/urandom:讀取非阻塞隨機位元流。
  • LC_ALL=C:固定 locale 避免多位元組字元干擾。
  • tr -dc "[:alnum:]":刪除(-d)補集(-c),僅保留英數字;[:graph:] 為所有可列印字元。
  • fold -w 10:每 10 字元換行。
  • head -10:取前 10 行(即 10 組密碼)。

方法二:/proc/sys/kernel/random/uuid(單次產生,無特殊符號)

cat /proc/sys/kernel/random/uuid | tr -d "-"

輸出範例

d9d01c59d22f4ebbac16b759103f4fc6

產生 32 字元十六進位字串,適合作為 API Token、Session ID 等場景。

選擇建議

需求推薦方法
批量產生、可控長度、字元集/dev/urandom 管線
單次、固定 32 字元、十六進位/proc/.../uuid
需特殊符號增強複雜度/dev/urandom + [:graph:]

兩者皆為用戶態指令,無需 root 權限,腳本整合極其方便。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved