shell脚本打印0-9的随机数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell脚本打印0-9的随机数相关的知识,希望对你有一定的参考价值。

shell脚本打印0-9的随机数

参考技术A 楼上的不对!环境变量RANDOM,范围是0--32767!
应该为:echo $(($RANDOM%10))
还有一种用gawk的写法: gawk 'BEGINx=int(10*rand()); print x'
其中rand()产生0-1之间的浮点数,int()为绝对值向下取整追问

$RANDOM%10含义是什么?谢谢!

追答

求余呀

本回答被提问者和网友采纳
参考技术B #!/bin/bash
a=$RANDOM
echo  $a|cut -c2

Linux - shell - RANDOM

  1. 概述

    1. 简单说下 shell 的环境变量 RANDOM
  2. 背景

    1. 我想做一个 随机日期 生成的小脚本
  3. 环境

    1. gitbash
      1. mintty-2.9.4

1. RANDOM

  1. 概述

    1. RANDOM
  2. RANDOM

    1. 环境变量

      1. Linux 的环境变量
    2. 查看

      1. 命令

        # 查看 环境变量
        # 结果可能和我的 不一样, 毕竟是 随机数, 谁也说不准
        > set | grep \'RANDOM\'
        
    3. 打印

      1. 命令

        # 打印一个随机数出来
        > echo $RANDOM
        # 查看发现, 这个随机数, 竟然和开始打印的一样...
        > set | grep \'RANDOM\'
        
    4. 结果

      1. 返回范围
        1. [0, 32768]
    5. 问题

      1. 这个范围, 会不会不太好用啊...

2. 使用

  1. 概述

    1. 基于 $RANDOM 生成我们想要的 随机数
  2. 思路

    1. 把这个数, 拿来计算

1. 生成 [0, 9] 的随机数

  1. 命令

    # 取模
    > echo $[RANDOM%10]
    

2. 生成 [1, 10] 的随机数

  1. 命令

    > echo $[RANDOM%10+1]
    

3. 后续

  1. 格式
    1. 不能生成 06 类的格式
    2. 准备看看 printf 这个东西

ps

  1. ref
    1. 没有在书上找到, 始终有点虚
    2. shell的随机数
    3. 其实方法还有很多, 比如 uuid, date 之类, 这个我暂时就不介绍了
      1. linux shell实现随机数多种方法
      2. shell 生成随机数的实现方法总结

以上是关于shell脚本打印0-9的随机数的主要内容,如果未能解决你的问题,请参考以下文章

shell脚本生成[4,9]范围内的随机整数,包含边界值4和9,并将随机数序列存放在一个数组中,脚本实现?

Shell脚本之:生产随机密码的若干种可能

shell脚本怎么生成运行日志

生成8位随机密码脚本

shell脚本如何判断变量为数字?

Shell脚本之IP网络地址和广播地址计算