Linxu指令--date,cal

2024-06-17 11:32
文章标签 linxu date cal 指令

本文主要是介绍Linxu指令--date,cal,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在linux环境中,不管是编程还是其他维护,时间是必不可少的,也经常会用到时间的运算,熟练运用date命令来表示自己想要表示的时间,肯定可以给自己的工作带来诸多方便。

1.命令格式:

  date [参数]... [+格式]

2.命令功能:

date 可以用来显示或设定系统的日期与时间。

3.命令参数:

必要参数:

%H 小时(以00-23来表示)。 

%I 小时(以01-12来表示)。 

%K 小时(以0-23来表示)。 

%l 小时(以0-12来表示)。 

%M 分钟(以00-59来表示)。 

%P AM或PM。 

%r 时间(含时分秒,小时以12小时AM/PM来表示)。 

%s 总秒数。起算时间为1970-01-01 00:00:00 UTC。 

%S 秒(以本地的惯用法来表示)。 

%T 时间(含时分秒,小时以24小时制来表示)。 

%X 时间(以本地的惯用法来表示)。 

%Z 市区。 

%a 星期的缩写。 

%A 星期的完整名称。 

%b 月份英文名的缩写。 

%B 月份的完整英文名称。 

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

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

%D 日期(含年月日)。 

%j 该年中的第几天。 

%m 月份(以01-12来表示)。 

%U 该年中的周数。 

%w 该周的天数,0代表周日,1代表周一,异词类推。 

%x 日期(以本地的惯用法来表示)。 

%y 年份(以00-99来表示)。 

%Y 年份(以四位数来表示)。 

%n 在显示时,插入新的一行。 

%t 在显示时,插入tab。 

MM 月份(必要) 

DD 日期(必要) 

hh 小时(必要) 

mm 分钟(必要)

ss 秒(选择性) 

选择参数:

-d<字符串>  显示字符串所指的日期与时间。字符串前后必须加上双引号。 

-s<字符串>  根据字符串来设置日期与时间。字符串前后必须加上双引号。 

-u  显示GMT。 

--help  在线帮助。 

--version  显示版本信息 

4.使用说明:

1.在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中可用的标记列表如下: % :  打印出 %:

%n : 下一行

%t : 跳格

%H : 小时(00..23)

%I : 小时(01..12)

%k : 小时(0..23)

%l : 小时(1..12)

%M : 分钟(00..59)

%p : 显示本地 AM 或 PM

%r : 直接显示时间 (12 小时制,格式为 hh:mm:ss [AP]M)

%s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数

%S : 秒(00..61)

%T : 直接显示时间 (24 小时制)

%X : 相当于 %H:%M:%S

%Z : 显示时区 %a : 星期几 (Sun..Sat)

%A : 星期几 (Sunday..Saturday)

%b : 月份 (Jan..Dec)

%B : 月份 (January..December)

%c : 直接显示日期与时间

%d : 日 (01..31)

%D : 直接显示日期 (mm/dd/yy)

%h : 同 %b

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

%m : 月份 (01..12)

%U : 一年中的第几周 (00..53) (以 Sunday 为一周的第一天的情形)

%w : 一周中的第几天 (0..6)

%W : 一年中的第几周 (00..53) (以 Monday 为一周的第一天的情形)

%x : 直接显示日期 (mm/dd/yy)

%y : 年份的最后两位数字 (00.99)

%Y : 完整年份 (0000..9999)

2.在设定时间方面:

date -s //设置当前时间,只有root权限才能设置,其他只能查看。

date -s 20080523 //设置成20080523,这样会把具体时间设置成空00:00:00

date -s 01:01:01 //设置具体时间,不会对日期做更改

date -s “01:01:01 2008-05-23″ //这样可以设置全部时间

date -s “01:01:01 20080523″ //这样可以设置全部时间

date -s “2008-05-23 01:01:01″ //这样可以设置全部时间

date -s “20080523 01:01:01″ //这样可以设置全部时间

3.加减:

date +%Y%m%d         //显示前天年月日

date +%Y%m%d --date="+1 day"  //显示前一天的日期

date +%Y%m%d --date="-1 day"  //显示后一天的日期

date +%Y%m%d --date="-1 month"  //显示上一月的日期

date +%Y%m%d --date="+1 month"  //显示下一月的日期

date +%Y%m%d --date="-1 year"  //显示前一年的日期

date +%Y%m%d --date="+1 year"  //显示下一年的日期

5.使用实例:

实例1:显示当前时间

命令:

date

date '+%c'

date '+%D'

date '+%x'

date '+%T'

date '+%X'

输出:

[root@localhost ~]# date

2012年 12月 08日 星期六 08:31:35 CST

[root@localhost ~]# date '+%c'

2012年12月08日 星期六 08时34分44秒

[root@localhost ~]# date '+%D'

12/08/12[root@localhost ~]# date '+%x'

2012年12月08日

[root@localhost ~]# date '+%T'

08:35:36[root@localhost ~]# date '+%X'

08时35分54秒

[root@localhost ~]#

说明:

实例2:显示日期和设定时间

命令:

date --date 08:42:00

输出:

[root@localhost ~]# date '+%c'

2012年12月08日 星期六 08时41分37秒

[root@localhost ~]# date --date 08:42:00

2012年 12月 08日 星期六 08:42:00 CST

[root@localhost ~]# date '+%c' --date 08:45:00

2012年12月08日 星期六 08时45分00秒

[root@localhost ~]#

说明:

实例3:date -d参数使用

命令:

输出:

[root@localhost ~]# date -d "nov 22"

2012年 11月 22日 星期四 00:00:00 CST

[root@localhost ~]# date -d '2 weeks'

2012年 12月 22日 星期六 08:50:21 CST

[root@localhost ~]# date -d 'next monday'

2012年 12月 10日 星期一 00:00:00 CST

[root@localhost ~]#  date -d next-day +%Y%m%d

20121209[root@localhost ~]# date -d tomorrow +%Y%m%d

20121209[root@localhost ~]# date -d last-day +%Y%m%d

20121207[root@localhost ~]# date -d yesterday +%Y%m%d

20121207[root@localhost ~]# date -d last-month +%Y%m

201211[root@localhost ~]# date -d next-month +%Y%m

201301[root@localhost ~]# date -d '30 days ago' 

2012年 11月 08日 星期四 08:51:37 CST

[root@localhost ~]# date -d '-100 days' 

2012年 08月 30日 星期四 08:52:03 CST

[root@localhost ~]#  date -d 'dec 14 -2 weeks'

2012年 11月 30日 星期五 00:00:00 CST

[root@localhost ~]# date -d '50 days'

2013年 01月 27日 星期日 08:52:27 CST

说明:

date 命令的另一个扩展是 -d 选项,该选项非常有用。使用这个功能强大的选项,通过将日期作为引号括起来的参数提供,您可以快速地查明一个特定的日期。-d 选项还可以告诉您,相对于当前日期若干天的究竟是哪一天,从现在开始的若干天或若干星期以后,或者以前(过去)。通过将这个相对偏移使用引号括起来,作为 -d 选项的参数,就可以完成这项任务。

具体说明如下:

date -d "nov 22"  今年的 11 月 22 日是星期三

date -d '2 weeks' 2周后的日期

date -d 'next monday' (下周一的日期)

date -d next-day +%Y%m%d(明天的日期)或者:date -d tomorrow +%Y%m%d

date -d last-day +%Y%m%d(昨天的日期) 或者:date -d yesterday +%Y%m%d

date -d last-month +%Y%m(上个月是几月)

date -d next-month +%Y%m(下个月是几月)

使用 ago 指令,您可以得到过去的日期:

date -d '30 days ago' (30天前的日期)

使用负数以得到相反的日期:

date -d 'dec 14 -2 weeks' (相对:dec 14这个日期的两周前的日期)

date -d '-100 days' (100天以前的日期)

date -d '50 days'(50天后的日期)

实例4:显示月份和日数

命令:

date  '+%B %d'

输出:

[root@localhost ~]# date  '+%B %d' 

十二月 08[root@localhost ~]#

说明:

实例5:显示时间后跳行,再显示目前日期 

命令:

date '+%T%n%D'

输出:

[root@localhost ~]# date '+%T%n%D'

09:00:30

12/08/12[root@localhost ~]#



cal命令可以用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历,通称阳历。“阳历”又名“太阳历”,系以地球绕行太阳一周为一年,为西方各国所通用,故又名“西历”。

1.命令格式:

cal [参数][月份][年份]

2.命令功能:

用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年份

3.命令参数:

-1 显示一个月的月历

-3 显示系统前一个月,当前月,下一个月的月历

-s  显示星期天为一个星期的第一天,默认的格式

-m 显示星期一为一个星期的第一天
-j  显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)
-y  显示当前年份的日历

4.使用实例:

实例1:显示当前月份日历

命令:

cal

输出:

[root@localhost ~]# cal

   十二月 2012     

日 一 二 三 四 五 六

                   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

30 31[root@localhost ~]#

实例2:显示指定月份的日历

命令:

cal 9 2012

输出:

[root@localhost ~]# cal 9 2012

     九月 2012      

日 一 二 三 四 五 六

                   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

30

实例3:显示2013年日历

命令:

cal -y 2013 

cal 2013

输出:


实例4:显示自1月1日的天数

命令:

cal -j

输出:

[root@localhost ~]# cal -j

        十二月 2012        

  日   一   二   三   四   五   六

                        336

337 338 339 340 341 342 343

344 345 346 347 348 349 350

351 352 353 354 355 356 357

358 359 360 361 362 363 364

365 366[root@localhost ~]#

实例5:星期一显示在第一列

命令:

cal -m

输出:

[root@localhost ~]# cal -m

    十二月 2012     

一 二 三 四 五 六 日

                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 30

31[root@localhost ~]#





这篇关于Linxu指令--date,cal的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1069323

相关文章

【JavaSE ⑧】P219 ~ 225 Date类‘’DateFormat类转化Date和字符串;Calendar类获得日历中某值,修改日历,日历转日期

目录 日期时间类1 Date类概述常用方法 2DateFormat类构造方法格式规则常用方法parse方法format方法 3 Calendar类概念获取方式常用方法get/set方法add方法getTime方法 ● 练习1.判断Date不同参数构造的输出2. 用日期时间相关的API,计算一个人已经出生了多少天。3. 获取Calendar对象,输出日历当前年,月,日4. 把日历转换为日期

B站大模型指令微调入门实战(完整代码),一键打造你的数字分身

前两天,想导出微信聊天记录,于是搞了个小工具。 感兴趣的小伙伴,可以回看: 微信聊天记录导出为电脑文件实操教程(附代码) 一键获取所有微信聊天记录(附PyQT6入门实战) 拿到这些数据都有什么用? 突发奇想:如果把微信上,所有和我相关的聊天对话提取出来,再结合大语言模型 LLM,是不是就可以打造我的数字分身了? 选择一个基座大模型,通过指令微调的方式,打造个性化AI Bot,不失为

指令微调数据集构建方法

指令微调(Instruction Tuning),是指使用自然语言形式的数据对预训练后的大语言模型进行参数微调,在一些文章中也称为有监督微调(Supervised Fine-tuning,SFT)或多任务提示训练(Multitask Prompted Training)。指令微调的第一步就是收集或构建指令化的实例,然后通过有监督的方式对LLM的参数进行微调,经过指令微调后,大语言模型能够展现出较强

Linux的基本指令第二篇

1.cat - 查看文件 语法:cat [选项] [文件] 功能: 查看目标文件的内容 -b 对非空输出行编号 -n对输出的所有行编号 -s不输出多行空行 现有一个文件test.c cat -n test.c cat -b test.c cat -s test.c 创建一个新文件 + 加入源文件的内容       ||           将源文件的内

Vue-列表渲染指令

v-for  语法:v-for="(参数1,可选参数1,可选参数2) in 数组名"  参数1是元素,也是这个数组 如果可选参数只写一个,那么这个可选参数就是数组的索引, 如果可选参数写两个,那么第一个可选参数是键值对,第二个可选参数是索引 它会渲染依次渲染数组里面的属性 数组有几个元素,这里面li标签就会渲染多少个  <body><div id="app"><input type="

获取时间戳是使用System.currentTimeMillis()还是使用new Date().getTime()(阿里开发规范)?

1.阿里规范 在阿里的Java开发手册中强制要求使用System.currentTimeMillis() 2.为什么(源码详解) new Date().getTime()它实际上也是调用的System.currentTimeMillis(),源码分析。 这个fastTime是它的成员变量,在new Date()的时候就被赋值了。 扩展一下这个transient这个关键字,它是为了保护

ChatGPT指令|使用ChatGPT解决学术科研的相关问题

一、使用chatgpt撰写论文全过程指令 (一)引言部分 1. 提供主题背景:为[插入主题名称]撰写一篇旨在[插入目标数据]的论证性论文,首先提供该主题的背景信息。 2. 增强开篇陈述的吸引力:给出一些例子,说明如何使以下开篇陈述更具吸引力- [插入开篇陈述]。 3. 研究填补空白:描述[插入研究主题和目标]的研究是如何有效地填补现有研究中的空白。 4. 提及先前研究和关键贡献:在撰写关于[

Oracle2-数据类型之to_char to_date 函数

http://www.cnblogs.com/ajian/archive/2009/03/25/1421063.html TO_DATE格式(以时间:2007-11-02   13:45:25为例)             Year:               yy two digits 两位年                显示值:07         yyy three digits

cpuid 指令 0和1 功能号释义

/*参数2 对应值返回表输入(eax) 返回0 eax 最大可输入值(eax)ebx "Genu"ecx "ntel"edx "ineI" 组成 GenuineIntel(CPU供应商标识字符串)1 eax 版本信息:类型、族、模型、步进IDebx 第 7 ~ 0 位:品牌索引第 15 ~ 8 位:CLFLUSH 行大小(值 + 8 = 缓冲行大小字节)第 23 ~ 1

用AI打败AI,利用ai指令对头条文章进行查重测试,结果出乎意料

前言:现在的ai真的太火爆了,让人不得不感叹ai的神奇之处,让我们一起来探讨下ai的强大之处吧!本文仅限学习研究。 背景:最近看到很多人用ai写文章,然后被头条判定为疑似ai生成,所以想研究学习下今日头条先进的检测机制。 然后我自己也尝试用ai生成了一篇文章,想测试下,果不其然,虽然看着已经很接近人类的风格了,但是还是被头条检测到疑似ai生成。通过一些测试,发现头条的文章检测机制可能分为2步,