linux 系统时间date vcs根据时间产生随机种子
前言
2023.3.20 首先介绍时间,再介绍如何根据时间产生随机种子
一、date
date
:用来显示或设定系统的日期与时间
使用方法:date [OPTION]... [+FORMAT]
1、OPTION:可选的参数
-d
:显示时间
-s
:设置时间
-r
:显示文件的上次修改时间
--help
:显示帮助信息
--version
:输出版本信息
2、FORMAT:设定显示格式
注意+加号和输出格式的选项之间没有空格,否则会出现语法错误
%a :星期几的缩写 (Sun…Sat)
%A :星期的完整名称(Sunday…Saturday)。
%b :缩写的月份名称(例如,Jan)
%B :完整的月份名称(例如,January)
%c :本地日期和时间(例如,Thu Mar 3 23:05:25 2005)
%C :世纪,和%Y类似,但是省略后两位(例如,20)
%d :日 (01…31)
%D :日期,等价于%m/%d/%y
%e :一月中的一天,格式使用空格填充,等价于%_d
%F :完整的日期;等价于 %Y-%m-%d
%g :ISO 标准计数周的年份的最后两位数字
%G :ISO 标准计数周的年份,通常只对%V有用
%h :等价于 %b
%H :小时 (00…23)
%I 小时 (01…12)
%j :一年中的第几天 (001…366)
%k :小时,使用空格填充 ( 0…23); 等价于 %_H
%l :小时, 使用空格填充 ( 1…12); 等价于 %_I
%m :月份 (01…12)
%M :分钟 (00…59)
%n :新的一行,换行符
%N
:纳秒 (000000000…999999999)
%p :用于表示当地的AM或PM,如果未知则为空白
%P :类似 %p, 但是是小写的
%r :本地的 12 小时制时间(例如 11:11:04 PM)
%R :24 小时制 的小时与分钟; 等价于 %H:%M
%s
:自 1970-01-01 00:00:00 UTC 到现在的秒数
%S :秒 (00…60)
%t :插入水平制表符 tab
%T :时间; 等价于 %H:%M:%S
%u :一周中的一天 (1…7); 1 表示星期一
%U : 一年中的第几周,周日作为一周的起始 (00…53)
%V :ISO 标准计数周,该方法将周一作为一周的起始 (01…53)
%w :一周中的一天(0…6),0代表星期天
%W : 一年中的第几周,周一作为一周的起始(00…53)
%x :本地的日期格式(例如,12/31/99)
%X :本地的日期格式(例如,23:13:48)
%y :年份后两位数字 (00…99)
%Y :年
%z :+hhmm 格式的数值化时区格式(例如,-0400)
%: z :+hh:mm 格式的数值化时区格式(例如,-04:00)(ps:冒号和z之间没有空格,是为了显示)
%:: z :+hh:mm:ss格式的数值化时区格式(例如,-04:00:00)
%::: z :数值化时区格式,相比上一个格式增加’:'以显示必要的精度(例如,-04,+05:30)
%Z :时区缩写 (如 EDT)
3、时间格式
MMDDhhmm[[CC]YY][.ss]
:CC 为年份前两位数字,YY 为年份后两位数字
root权限者可以修改系统的时间,修改后使用命令clock -w
来将系统时间写入 CMOS 中,这样下次重新开机时系统时间才会持续保持最新的正确值。
date
Mon Mar 20 14:56:30 CST 2023date +"%Y-%m-%d"
2023-03-20date -d "1 day ago" +"%Y-%m-%d" //显示一天前的时间
2023-03-19date '+%T' //和 date +%T 输出是相同的
14:57:11
二、随机种子
- 仿真的时候会发现每次随机产生的数据都是相同的,是因为默认的随机种子是相同的。
- 随机过程的原理是根据随机种子
产生一个新的随机种子和随机数
,下一次的随机根据新的随机种子产生,依次类推。 - 随机数并不是完全随机的,而是
伪随机数生成器RNG
产生的,只不过是算法过于复杂,看上去像是随机产生的 - 假如给到初始随机种子一个整数,0或1这种,接下来的随机化可能还是比较简单,所以根据时间来随机产生,但是时间随机也是会有同样的问题。
这几种方式都可以产生随机种子
SEED = `date +%N`
SEED = `date +%s`
SEED = ${shell date +%s}
此外,vcs还有一些随机种子设置的编译选项
+ntb_random_seed = ${SEED}
:设置随机种子
+ntb_random_seed_aotumatic
:用这个仿真代码不需要再去写seed变量,自动会进行随机
+plusargs_save
:将设置的随机变量的种子传递到tb文件,和系统函数$value$plusargs("seed=%0d",seed)
搭配使用
参考链接:【数字IC快速入门】Makefile脚本了解
linux 系统时间date vcs根据时间产生随机种子相关推荐
- linux中date命令PDT,linux系统下date命令修改时间及hwclock硬件时间
修改日期: 时间设定成2016年5月18日的命令如下: date -s 05/18/2016 修改时间: 将系统时间设定成上午10点10分40秒的命令如下. date -s 10:10:40 修改时区 ...
- centos linux 系统上 log4j打印的时间与CST时间差8小时的解决方法
centos linux 系统上 log4j打印的时间与CST时间差8小时的解决方法 参考文章: (1)centos linux 系统上 log4j打印的时间与CST时间差8小时的解决方法 (2)ht ...
- 如何查看linux重启时间,Linux系统怎么查看最后重启时间
平常我们不会去注意系统的最后重启时间,但在特殊的情况下我们还是会去查看的,那么Linux系统怎么查看最后重启时间呢?就让学习啦小编来告诉大家Linux系统查看最后重启时间的方法吧,希望对大家有所帮助. ...
- 对Linux系统中的时钟和时间的探讨
2019独角兽企业重金招聘Python工程师标准>>> 概要 1)介绍Linux系统中时钟的基本概念 2)探讨hwclock命令的工作方式. 3)系统启动过程中Linux系统对系统时 ...
- linux cst时间转换,linux系统中CST与EDT时间转换以及系统时间与网络时间同步
初始时间:2012年 09月 14日 星期五 18:15:33EDT [root@test ~]# mv /etc/localtime /etc/localtime.bak [root@test ~] ...
- Linux系统的日志管理及时间管理
目录 实验环境 1. journald 1.1 journalctl概述 1.2 查看系统日志 1.3 用journald服务永久存放日志 2. rsyslog 2.1 rsyslog概述 2.2 自 ...
- linux系统 date命令,linux系统 的 date命令
[root@localhost ~]# man date NAME date - 打印或设置系统日期和时间 总览 date [选项]... [+格式] date [选项] [MMDDhhmm[[CC] ...
- Linux系统中的日志及时间时区管理超实用
目录 一.journal 1.journalctl命令的用法 2.用journald服务永久存放日志 二.rsyslog 1.自定义日志采集 2.日志的远程同步 3.更改日志采集格式 三.timeda ...
- Linux 系统如何调整时区和时间
比如我要吧机器调成太平洋时区,那么我可以输入以下的命令,我们创建一个Link文件来指明是Pacific Time: cd /etc/ rm –r localtime sudo ln -s /usr/s ...
最新文章
- python教程廖雪峰云-Python3基础教程-廖雪峰[带标签完整版]
- chart 模板 - 每天5分钟玩转 Docker 容器技术(165)
- 【解决方案】istio-ingressgateway HTTP probe failed with statuscode: 503
- Hadoop YARN安装部署初探
- fastai学习:02_production Questionnaire
- numpy、cv2等操作图片基本操作
- 5个学习Linux命令站点推荐
- pycharm professional2019.1破解过程
- WinRAR 试用版曝漏洞:免费软件并不“免费“
- HTML页面多个平行四边形,平行四边形奥数题
- git+coding.net记录篇
- 抓包工具Charles乱码解决办法
- Charles 弱网测试
- springboot基于BS结构的企业人事管理系统的设计与实现毕业设计源码121727
- 用户登录功能设计思路
- 计算机考研408二战
- 【第4篇】人工智能(AI)语音测试原理和实践
- 刘强东的漫漫情路:龚晓京、西红柿、奶茶...
- Qt 之 事件总线模型
- HTTP(一)HTTP响应的过程