#!/bin/bash
  
function rand(){
  min=$1
  max=$(($2-$min+1))
  num=$(date +%N)

  ((retnum=$num%max+min));
   echo $retnum;

}
  
rnd=$(rand 1 50)
echo $rnd
  
exit 0

-- 报错 shell value too great for base (error token is "096192304")

解决方法:加上10#,即声明称十进制

将要转换成十进制的变量或者数字 在前面加上`10#`即可:

((retnum=10#$num%max+min));

相关文章:

  • 2022-01-18
  • 2022-12-23
  • 2021-05-03
  • 2021-04-08
  • 2021-12-14
  • 2021-05-10
  • 2021-06-19
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-22
相关资源
相似解决方案