1. 使用dd命令截取/dev/urandom
    dd if=/dev/urandom bs=1 count=20 2>/dev/null|base64|rev|cut --bytes 3-|rev

    Linux 随机数生成

     

     

  2. 生成10个小写字母
    < /dev/urandom tr -dc [a-z] | head --bytes 10;echo

    Linux 随机数生成

     

     

  3. 生成10个大写字母
    < /dev/urandom tr -dc [A-Z] | head --bytes 10;echo

    Linux 随机数生成

     

     

  4. 生成10个数字
    < /dev/urandom tr -dc [:digit:] | head --bytes 10;echo

    Linux 随机数生成

     

     

  5. 利用时间和散列函数
    date +%s | sha256sum | base64 | head --bytes 10;echo

    Linux 随机数生成

     

     

  6. openssl rand子命令
    Linux 随机数生成

     

     openssl rand 产生的是随机bytes字节,直接输出会乱码,故用base64或hex编码

    openssl rand -hex 6
    openssl rand -base64 6

    Linux 随机数生成

     

     使用base64编码可能会有 / + = 等特殊字符

  7. 结合fold命令
    tr -dc [:digit:] < /dev/urandom | fold --width 10 | head -1

    Linux 随机数生成

     

     

  8. 使用strings提取ASCII字符
    strings /dev/urandom | grep -o '[[:digit:]]' | head -10 | tr -d '\n';echo

    Linux 随机数生成

     

     

相关文章:

  • 2021-11-04
猜你喜欢
  • 2021-08-17
  • 2021-05-19
  • 2021-08-23
  • 2022-12-23
  • 2021-11-30
相关资源
相似解决方案