Linux系统常用命令总结笔记7---系统时间管理
gudong366 2025-06-04 16:53 10 浏览
---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格式输出系统的启动时间
相关推荐
- linux sed系列 第四篇:sed工业实战——日志处理与数据清洗
-
“掌握了sed的编程能力后,我们如同装备精良的工匠,终于可以踏入真实的工业战场。本篇将聚焦sed在日志分析、数据合规化、多文件批处理等场景中的应用,看它如何在海量数据中游刃有余,展现文本处理的...
- Linux下sed的简单使用(linux中sed是什么意思)
-
1、sed简介stremeditor流编辑器,它是一项Linux指令,功能同awk类似,差别在于,sed简单,对列处理的功能要差一些,awk的功能复杂,对列处理的功能比较强大,sed编辑器是一行一...
- linux基础命令之date命令(linux中的date)
-
date命令主要用于显示或者设置系统时间语法格式:date参数对象使用date命令时,最好先使用date--help命令查看支持哪些参数,有些小型Linux系统下的date命令,只支持一些基本参...
- Ubuntu linux 常用命令(ubuntu常用的50个命令)
-
使用dpkg命令来安装.deb包。sudodpkg-i~/example.deb如果在安装过程中遇到依赖问题,可以使用以下命令来修复:sudoapt-getinstall-f将flut...
- Linux基础命令-sed命令(linux教程:sed命令的用法)
-
Sed全名streameditor流编辑器,它是一个强大的文本处理工具,它可以从文件中接受输入,也可以接受来自标准输入流的输入,它擅长取行。Sed的用途非常广泛,包括:1)文本替换2)选择性的输...
- linux sed系列 第二篇:sed进阶技巧——地址定位与正则表达式
-
“上一篇我们掌握了sed的基础替换,如同获得了第一把钥匙。现在,让我们更进一步,学习如何精准锁定目标行,如同拥有了导航地图,让每一次操作都直击要害!”地址定位的四种维度sed的强大,很大程度上源...
- 火狐Firefox浏览器140发布:手动Unload标签页、优化翻译体验等
-
IT之家6月24日消息,Mozilla在发布版本139不到一个月后,推出了最新的开源网页浏览器Firefox140。新版本增加了手动Unload标签页的功能,优化了垂直标签页的调...
- Linux 基本正则表达式及扩展正则表达式功能举例
-
在Linux中,正则表达式(RegularExpression)是一种强大的模式匹配工具,用于在文本中查找、匹配和处理特定模式的字符串。Linux支持两种类型的正则表达式:基本正则表达式(Basic...
- linux下find命令的经典26个使用示例
-
简介find命令是基于unix的操作系统中常用的工具之一。顾名思义,它在目录层次结构中查找文件和目录。用户可以传递不同的参数,并根据文件的名称、扩展名、类型、大小、权限、修改时间、所有者、组等搜索文件...
- linux运维中特殊符号的应用与实践
-
路径位置类的特殊符号(1)、波浪线(~)在linux系统的命令行中,~表示用户的家目录,超级用户为/root,普通用户为/home。假设我当前目录在usr/local下[root@xrylocal]...
- 开源框架log4cpp实战(开源gui框架)
-
1.Log4cpp使用Log4cpp中主要包含Category(种类),Appender(附加器),Layout(布局),Priorty(优先级),NDC(嵌套的诊断上下文)。Category、App...
- Linux find命令详解(linux find -l)
-
一、命令介绍Linuxfind命令是类unix操作系统中最重要和最常用的命令行实用程序之一。find命令用于根据指定的条件搜索和定位与参数匹配的文件和目录列表。find命令提供了广泛的选项,允许用户...
- Linux运维:单引号与双引号的使用(linux 单引号和双引号)
-
1、单引号的使用单引号可以将它中间的所有任意字符还原为字面意义,实现屏蔽Shell元字符的功能。注意不可以在两个单引号中间单独插入一个单引号,单引号必须成对出现。示例1:定义一个变量,并输出变量的...
- Linux技巧:find 命令用法详细说明,看完会有收获
-
在Linux命令中,find是比较复杂难用的命令。使用该命令搜索文件时,常常发现自己找了一些例子能用,但稍微改一下条件,就搜不到想要的结果。下面会以一些实例来说明使用find命令的关键要点和...
- Linux Shell中单引号、双引号、反引号的解释
-
1、单引号('')单引号所见即所得,直接显示单引号里的内容。即单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的。比如下面的例子,单引号所见即所得。2、双引号("...
- 一周热门
- 最近发表
-
- linux sed系列 第四篇:sed工业实战——日志处理与数据清洗
- Linux下sed的简单使用(linux中sed是什么意思)
- linux基础命令之date命令(linux中的date)
- Ubuntu linux 常用命令(ubuntu常用的50个命令)
- Linux基础命令-sed命令(linux教程:sed命令的用法)
- linux sed系列 第二篇:sed进阶技巧——地址定位与正则表达式
- 火狐Firefox浏览器140发布:手动Unload标签页、优化翻译体验等
- Linux 基本正则表达式及扩展正则表达式功能举例
- linux下find命令的经典26个使用示例
- linux运维中特殊符号的应用与实践
- 标签列表
-
- linux一键安装 (31)
- linux运行java (33)
- ln linux (27)
- linux 磁盘管理 (31)
- linux 内核升级 (30)
- linux 运行python (28)
- linux 备份文件 (30)
- linux 网络测试 (30)
- linux 网关配置 (31)
- linux jre (32)
- linux 杀毒软件 (32)
- linux语法 (33)
- linux博客 (33)
- linux 压缩目录 (37)
- linux 查看任务 (32)
- 制作linux启动u盘 (35)
- linux 查看存储 (29)
- linux乌班图 (31)
- linux挂载镜像 (31)
- linux 软件源 (28)
- linux题目 (30)
- linux 定时脚本 (30)
- linux 网站搭建 (28)
- linux 远程控制 (34)
- linux bind (31)