linux系统上修改系统时间:Linux系统常用命令总结笔记7---系统时间管理
---date: 用来显示或设置系统的时间和日期
用法:date [参数] [ 格式]
参数:
-d<字符串>: 显示字符串所指的日期与时间。字符串前后必须加上双引号;
-f: 显示指定文件中每一行指定的时间;
-R: 根据RFC-8222指定格式输出日期;
-s<字符串>: 根据字符串来设置日期与时间。要双引号:[MMDDhhmm[[CC]YY][.ss]]
-u:显示或设置全球时间(格林威治时间)
格式:
如果需要以指定的格式显示日期,可以使用“ ”开头的字符串指定其格式,详细格式如下:
%%:文本的 %
%a:星期的简写 (Sun..Sat)
%A:星期的全称 (不同长度) (Sunday..Saturday)
%b:当前区域的月份的简写 (Jan..Dec)
%B:当前区域的月份的全称(变长) (January..December)
%c:当前区域的日期和时间 (Sat Nov 04 12:02:33 EST 1989)
%d:(月份中的)几号(用两位表示) (01..31)
%e:(月份中的)几号(去零表示) (1..31)
%D: 日期(按照 月/日期/年 格式显示) (mm/dd/yy)
%X:按照 (%H:%M:%S) 格式显示当前时间
%x: 按照 (mm/dd/yy) 格式显示当前日期
%H:小时(按24小时制显示,用两位表示) (00..23)
%k:小时(按 24 小时制显示,去零显示) ( 0..23)
%I:小时(按 12 小时制显示,用两位表示) (01..12)
%l:小时(按 12 小时制显示,去零表示) ( 1..12)
%j:一年中的)第几天(用三位表示) (001..366)
%m:月份(用两位表示) (01..12)
%M:分钟数(用两位表示) (00..59)
%n:换行
%p:当前时间是上午 AM 还是下午 PM
%T:时间,按 24 小时制显示(hh:mm:ss)
%r:时间,按 12 小时制显示 (hh:mm:ss [A/P]M)
%s:从 1970年1月1日0点0分0秒到现在历经的秒数 (GNU扩充)
%S:秒数(用两位表示)(00..60)
%w:用数字表示星期几 (0..6); 0 代表星期天
%y: 年的后两位数字 (00..99)
%Y: 年(用 4 位表示) (1970...)
例子:
date "now:%Y-%m-%d" ##格式化当前的日期;
date "%T" ##按24小时制显示当前的时间;
date "%r" ##按12小时制显示当前的时间
date -d "2009-12-12" "%Y/%m/%d %H:%M.%S" ##普通转格式
date -d "-10 second" "%Y-%m-%d %H:%M.%S" ##显示10秒前的时间
date -d " 10 second" "%Y-%m-%d %H:%M.%S" ##显示10秒后的时间
date -d " 1 day" %Y%m%d #显示后一天的日期
date -d "-1 day" %Y%m%d #显示前一天的日期
date -d "-1 month" %Y%m%d #显示上一月的日期
date -d " 1 month" %Y%m%d #显示下一月的日期
date -d "-1 year" %Y%m%d #显示前一年的日期
date -d " 1 year" %Y%m%d #显示下一年的日期
date -s 20220523 #仅设置年月日,时间设置成空00:00:00;
date -s 01:01:01 #设置具体时间,不会对日期做更改
date -s "01:01:01 2022-05-23" #这样可以设置全部时间
date -s "01:01:01 20220523" #这样可以设置全部时间
date -s "2022-05-23 01:01:01" #这样可以设置全部时间
date -s "20220523 01:01:01" #这样可以设置全部时间
sudo date 1023150123.40 #设置当前时间,注意格式mmddhhMMyy.ss ,在嵌入式系统中使用的比较多;
---time: 用来显示特定指令执行时所需消耗的CPU时间参数:
-o <file>: 将执行时间写入到文件中
-a <file>: 将执行时间信息追加到文件中;
-f : 格式化时间输出
例子:
time date ##显示date命令使用的时间;
--real 0m0.001s -->为实际时间
--user 0m0.000s -->用户CPU时间
--sys 0m0.001s -->系统CPU时间
time ./hello ##显示hello进程运行的时间
---cal: 显示当前日历或指定日期的日历参数:
-l:显示当月输出;
-3:显示临近三个月的日历;
-s:将星期日作为月的第一天;
-m:显示星期一作为一周的第一天.. (缺省为星期日.)
-j:显示儒略历的(Julian)日期 (以 1 为基的天数, 从 1 月 1 日开始计数) .
-y:显示当前年份的日历..
例子:
cal -1 ##显示当月日期;
cal -3 ##显示近3个月日期;
cal 1 2023 ##显示2023年1月日期;
cal -j ##显示日期,以1为基数计数;
cal -y ##显示全年的日期;
---hwclock:Linux系统中用于设置和读取硬件时钟(RTC)的命令。说明:
--硬件时钟是指主机板上的时钟设备,也就是通常可在 BIOS 画面设定的时钟;
--系统时钟是指 Kernel 中的时钟,当 Linux 启动时,系统时钟会去读取硬件时钟的设定,
之后系统时钟即独立运作。
--hwclock需要root权限才能运行;硬件时钟通常是与系统时钟同步,可以手动设置或校正硬件时钟
--hwclock可以从系统时钟同步到硬件时钟,也可以从硬件时钟读取时间到系统时钟;
参数:
-r,--show:显示硬件时钟的时间;
-w,--systohc:将系统时钟同步到硬件时钟;
-s,hctosys:将硬件时钟同步到系统时钟;
-u,--utc:使用UTC时间格式;
-l,--localtime:使用本地时间格式;
例子:
sudo hwclock -r ##显示硬件时钟的时间;
sudo hwclock -w ##将系统时钟同步到硬件时钟;
sudo hwclock -s ##将硬件时钟同步到系统时钟;
##将硬件时钟设置为当前时间:
sudo hwclock --set --date "2023-01-01 08:00:00"
##将硬件时钟设置为当前系统时间(本地时间格式):
sudo hwclock --systohc --localtime
---NTPdate: 网络时间同步;安装使用说明:
--sudo apt-get install ntpdate
--sudo ntpdate cn.pool.ntp.org
参数:
-u: 使用未封装的NTP请求和响应包,而不是使用UDP端口123,可以穿越防火墙;
-t: TimeOut 指定等待响应的时间。给定 TimeOut 的值四舍五入为 0.2 秒的倍数。缺省值是 1 秒;
-b: 当本地系统时间和网络时间有较大差距时,强制进行一次时间调整。
-q: 查询ntp服务器时间,不设置时钟。
例子:
ntpdate -u cn.pool.ntp.org ##使用特定的服务器来同步时间;
ntpdate -q pool.ntp.org ##查询ntp服务器时间
---crontab:linux下用来周期性执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似。
调度配置文件说明:
--/etc/cron.deny:该文件中所列用户不允许使用crontab命令
--/etc/cron.allow:该文件中所列用户允许使用crontab命令
--/etc/crontab:系统任务调度配置文件
--/var/spool/cron/:用户任务调度配置文件
--配置文件格式:
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
--字段中特殊字符:
.星号(*):代表所有可能的值,例如month字段如果是星号,
则表示在满足其它字段的制约条件后每月都执行该命令操作。
.逗号(,):可以用逗号隔开的值指定一个列表范围,
例如,“1,2,5,7,8,9”
.中杠(-):可以用整数之间的中杠表示一个整数范围,
例如“2-6”表示“2,3,4,5,6”
.正斜线(/):可以用正斜线指定时间的间隔频率,
例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,
例如*/10,如果用在minute字段,表示每十分钟执行一次。
参数:
-u user:用来设定某个用户的crontab服务,不写为当前用户。
file:将file作为crontab的任务列表文件并载入crontab。
-e:编辑某个用户的crontab文件内容,不写为当前用户。
-l:显示某个用户的crontab内容,不写为当前用户。
-r:从/var/spool/cron/crontabs目录中删除某个用户crontab文件,不写为当前用户。
例子:
sudo crontab -u root -e ##编辑root用户crontabs配置文件,与vim功能类似;
service crond restart ##重新启动crond服务
cat /etc/crontab ##crontab文件内容分析
service crond reload ##重新载入配置
service crond status ##查看crontab服务状态
##每5分钟执行一次free,查看内存情况
5 * * * * /sbin/free
##在每天上午9点到11点的第5和第10分钟执行命令:
5,10 9-11 * * * command
##每隔两天的上午9点到11点的第5和第10分钟执行命令:
5,10 9-11 */2 * * command
##每个星期一的上午9点到11点的第5和第10分钟执行命令:
5,10 9-11 * * 1 /bin/sh /home/test.sh
##每晚的21:30重启smb命令:
30 21 * * * /etc/init.d/smb restart
##每月1、15日的23: 00重启smb命令:
00 23 1, 15 * * /etc/init.d/smb restart
##在每天的9点到18点间每一小时执行一次sync命令
* 9-18/1 * * * /bin/sync
---uptime:可以获取系统运行了多长时间,也可以用来查看系统的平均负载参数:
-p,--pretty: 比较人性化方式简洁格式显示运行时间
-s,--since: 以yyyy-mm-dd HH:MM:SS格式输出系统的启动时间
例子:
uptime -p ##可识别的方式输出系统从开机到到当前的运行时长
uptime -s ##以yyyy-mm-dd HH:MM:SS格式输出系统的启动时间
- 05-142023年港口煤炭价格:魏桥2023年12月份采购价格出炉
- 02-05松毛虫赤眼蜂防治对象 沁阳将投放赤眼蜂1万亩次
- 02-20白考儿与米兰:白考儿与米兰的命运却大不同
- 01-06云南中考体育1000米得分标准:中考体育100分省份云南调整800
- 10-16抖音爆款商品排行榜裤子,一周抖音鞋类爆款及达人带货榜
- 12-23我是一只千年狐 我是一只爱了千年的狐
- 12-13保山南红的纹,一组图欣赏云南保山南红
- 01-05中秋节可以摆什么水果?9月29日中秋节,有钱没钱记得把这6种吉祥果摆上桌
- 09-23人力资源职业前景分析 为什么说职位分析对于人力资源从业者来说很重要
- 10-08爸爸唱给女儿的歌超暖心,我爱你,爸爸
- 12-05yeezyboost怎么发售?开不开心,YEEZYBOOST
- 04-24挂机了还能玩同城匹配吗?同城匹配弊端出现玩家存在诸多顾虑
- 04-04大妈地铁脱鞋鞋子被踢走:男子乘车脱鞋因脚太臭引发白衣大哥怒怼
- 12-20部编二年级语文看图写话专项练习,小学语文看图写话专项练习
- 10-01荣耀X50和红米note11 5g天玑810 天玑800大战麒麟820红米Note9对标荣耀10X
- 01-06章莹颖的寻人启事:她曾写下生命短暂不能平凡