linux命令总结:date

简介:

1.功能说明

    打印或设置系统日期和时间

2.用法

    date [选项] ... [+格式]

    日期 [-u | --utc | - universal] [MMDDhhmm [[CC] YY] [。ss]]

3.选项

-d            显示 datestr 中所设定的时间 (非系统时间)

-f            显示DATEFILE文件中的每行时间

-r            显示文件的最后修改时间

-R            以RFC-2822兼容日期格式显示时间

-rfc-2822     以RFC-2822兼容日期格式显示时间

-s            设置时间为string

-u            显示或设定为Coordinated Universal Time时间格式

--help        显示date命令的帮助信息

--version     显示date命令的版本信息


Format参数格式:



参数            描述 



%%            显示字符%

%a            星期几的缩写(Sun..Sat)

%A            星期几的完整名称(Sunday...Saturday)

%b            月份的缩写(Jan..Dec)

%B            月份的完整名称(January..December)

%c            日期与时间。只输入date指令也会显示同样的结果

%C            世纪(年份除100后去整) [00-99]

%d            日期(以01-31来表示)。

%D            日期(含年月日)。

%e            一个月的第几天 ( 1..31)

%F            日期,同%Y-%m-%d

%g            年份(yy)

%G            年份(yyyy)

%h            同%b

%H            小时(00..23)

%I            小时(01..12)

%j            一年的第几天(001..366)

%k            小时( 0..23)

%l            小时( 1..12)

%m            月份(01..12)

%M            分钟(00..59)

%n            换行

%N            纳秒(000000000..999999999)

%p            AM or PM

%P            am or pm

%r            12小时制时间(hh:mm:ss [AP]M)

%R            24小时制时间(hh:mm)

%s            从00:00:00 1970-01-01 UTC开始的秒数

%S            秒(00..60)

%t            制表符

%T            24小时制时间(hh:mm:ss)

%u            一周的第几天(1..7); 1 表示星期一

%U            一年的第几周,周日为每周的第一天(00..53)

%V            一年的第几周,周一为每周的第一天 (01..53)

%w            一周的第几天 (0..6); 0 代表周日

%W            一年的第几周,周一为每周的第一天(00..53)

%x            日期(mm/dd/yy)

%X            时间(%H:%M:%S)

%y            年份(00..99)

%Y            年份 (1970…)

%z            RFC-2822 风格数字格式时区(-0500)

%Z            时区(e.g., EDT), 无法确定时区则为空

   


4.示例

1)-d参数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#获取明天的日期
date  -d next-day +%Y%m%d
#获取昨天的日期
date  -d last-day +%Y%m%d
#获取上个月的年和月
date  -d last-month +%Y%m
#获取下个月的年和月
date  -d next-month +%Y%m
#获取明年的年份
date  -d next-year +%Y
#获取10月10号的星期
date -d  "nov 10"
#获取两个星期以后的时间
date  -d  "2 weeks"  +%F-%T-%A-%Z
#获取30天前的日期
date  -d  '30 days ago'
#获取100天前的日期和50天后的日期
date  -d  '-100 days'  +%F-%T-%A-%Z
date  -d  '50 days'  +%F-%T-%A-%Z
#格式转换
date  +%b/%d/%G -d  "2008-07-01"
Jul /01/2008
date  +%F-%T -d  "Jul 1 21:11"
2017-07-01-21:11:00
#时间戳转换为日期时间
date  +%F-%T -d @1494237701
2017-05-08-18:01:41
#日期时间转换为时间戳
date  -d  '2017-2-22 22:14'  +%s

2)-s设置时间

1
2
3
4
5
date  // 显示当前日期
date  -s  // 设置当前时间,只有root权限才能设置,其他只能查看。
date  -s 20061010  // 设置成20061010,这样会把具体时间设置成空00:00:00
date  -s 12:23:23  // 设置具体时间,不会对日期做更改
date  -s “12:12:23 2006-10-10″  // 这样可以设置全部时间


3)修改时区

CST:中国标准时间(ChinaStandard Time),这个解释可能是针对RedHat Linux

UTC:协调世界时,又称世界标准时间,简称UTC,从英文国际时间/法文协调时间”UniversalTime/Temps Cordonné”而来。中国大陆、香港、澳门、台湾、蒙古国、新加坡、马来西亚、菲律宾、澳洲西部的时间与UTC的时差均为+8,也就是UTC+8

GMT:格林尼治标准时间(旧译格林威治平均时间或格林威治标准时间;英语:Greenwich Mean TimeGMT)是指位于英国伦敦郊区的皇家格林尼治天文台的标准时间,因为本初子午线被定义在通过那里的经线。

1
2
3
vim  /etc/sysconfig/clock 
ZONE= "Asia/Shanghai"
ln  -s  /usr/share/zoneinfo/Asia/Shanghai  /etc/localtime

4)同步硬件时钟

硬件时钟与系统时钟同步:clock --systohc 或者:hwclock --hctosys

系统时钟与硬件时钟同步:hwclock --systohc 或者:clock --systohc

1
2
3
4
5
6
hwclock
  -s | --hctosys       set  the system  time  from the hardware clock
  -w | --systohc       set  the hardware clock to the current system  time
clock
  -s | --hctosys       set  the system  time  from the hardware clock
  -w | --systohc       set  the hardware clock to the current system  time



本文转自 80后小菜鸟 51CTO博客,原文链接:http://blog.51cto.com/zhangxinqi/1921197

相关文章
|
28天前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
71 8
|
28天前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
194 6
|
29天前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
76 3
|
11天前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
38 14
Linux 10 个“who”命令示例
|
19天前
|
Linux 数据库
Linux中第一次使用locate命令报错?????
在Linux CentOS7系统中,使用`locate`命令时出现“command not found”错误,原因是缺少`mlocate`包。解决方法是通过`yum install mlocate -y`或`apt-get install mlocate`安装该包,并执行`updatedb`更新数据库以解决后续的“can not stat”错误。
30 9
|
18天前
|
监控 网络协议 Linux
Linux netstat 命令详解
Linux netstat 命令详解
|
24天前
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
79 3
|
28天前
|
存储 运维 Linux
如何在 Linux 系统中使用 envsubst 命令替换环境变量?
`envsubst` 是 Linux 系统中用于替换文本中环境变量值的实用工具。本文分三部分介绍其工作原理、使用方法及实际应用,包括配置文件替换、脚本执行中环境变量替换和动态生成文件等场景,帮助用户高效利用 `envsubst` 进行开发和运维工作。
44 4
|
28天前
|
运维 监控 Linux
别再只会使用简单的 ping 命令了,Linux 中这些高级 ping 命令可以提高工作效率!
在 Linux 系统中,ping 命令不仅用于检测网络连通性和延迟,还拥有多种高级选项和技巧,如定制数据包大小、获取详细统计信息、持续 ping、指定源地址和多目标 ping。本文详细介绍这些高级命令及其在性能测试、故障排查和网络监控中的实际应用,帮助你提升网络管理效率。
107 3
|
26天前
|
Linux
在 Linux 系统中,`find` 命令
在 Linux 系统中,`find` 命令
28 1