zoukankan      html  css  js  c++  java
  • 【原创】shell产生指定范围内的随机时间

    如果我们想产生,像图示格式的随机时间怎么办?

    小二带来源码分享~~  (转载请注明出处)

     #!/bin/sh
    ########################################
    #产生指定范围的随机年月日(YY-MM-DD HH:MM:SS),以10年为例
    #1、定义4个函数
    #2、调用函数,拼接输出字符串
    #
    #Created by: 枫林阁小二   @博客园
    #######################################
    
    #定义函数,产生随机年月日
    ran_ymd(){
    #产生范围在0~3650(包含3650)的随机数;下面几个函数同理 num=$(($RANDOM%3651))
    #定义变量ymd,赋值(格式yyyy-mm-dd) ymd=`date -d "${num} days ago" +%Y-%m-%d` echo ${ymd} } #产生指定范围的小时 ran_hour(){ x=`echo {00..23}`
    #定义数组.至于为什么最大数是23,读者请自己想 >-< array=($x) num=$(($RANDOM%24))
    #产生出来的随机数,直接关联数组下标,求得随机数 hour=`echo ${array[${num}]}` echo ${hour} } #产生指定范围的分钟 ran_min(){ x=`echo {00..59}` array=($x) num=$(($RANDOM%60)) min=`echo ${array[${num}]}` echo ${min} } #产生指定范围的秒 ran_sec(){ x=`echo {00..59}` array=($x) num=$(($RANDOM%60)) sec=`echo ${array[${num}]}` echo ${sec} } #产生指定的时间,格式 YYYY-MM-DD HH:MM:SS ran_time(){ a=`ran_ymd` b=`ran_hour` c=`ran_min` d=`ran_sec` #开始拼接 time1=`echo "${a} ${b}:${c}:${d}"` echo ${time1} } #下面开始验证功能,循环50次打印结果 for i in {1..50} do result=`ran_time` #拼接变量输出字符串 echo ${result} done

     

  • 相关阅读:
    力扣
    linux网卡知识
    opencv C++ Mat构造函数
    C++ vector迭代器访问二维数组
    opencv Scalar
    C++智能指针
    c++结构体
    C++ 公有继承、保护继承和私有继承的对比
    乌班图设置C++11
    C++类模板的使用
  • 原文地址:https://www.cnblogs.com/sdmxl/p/10616947.html
Copyright © 2011-2022 走看看