• Linux:时间指令 - cal & date


    Linux:时间指令 - cal & date


    date指令

    date用于以指定格式显示时间

    我们先看看直接输入date指令的效果:

    [hxy@iZ2zehtehrgzt3wqccrpyfZ CSDN]$ date
    Tue Mar 12 21:38:01 CST 2024
    
    • 1
    • 2

    直接输入date指令,得到了以 星期 月 日 时:分:秒 时区 年为格式的时间。

    但是date指令可以按照自己制定的格式来输出时间

    使用者可以设定格式,语法为一个 + 后接数个标记

    常用标记如下:

    标记含义
    %H小时
    %M分钟
    %s
    %X相当于 %H:%M:%S
    %d
    %m
    %Y
    %F相当于%Y-%m-%d

    示例:

    [hxy@iZ2zehtehrgzt3wqccrpyfZ CSDN]$ date +%F_%X
    2024-03-12_09:50:15 PM
    
    • 1
    • 2

    以上示例中,+%F_%X这个整体就用于格式化输出,其以一个+开头。对照上方的标记表格,其实%F就对应了2024-03-12%X就对应了09:50:15 PM,而他们的分隔符也是可以有我们自己穿插的:

    [hxy@iZ2zehtehrgzt3wqccrpyfZ CSDN]$ date +%Y:%m-%d_%H
    2024:03-12_21
    
    • 1
    • 2

    这样每个标记都显示了自己代表的时间,而每个时间之间的符号完全由我们自己决定。


    date指令还可以用于输出时间戳,先简单讲解一下时间戳的概念:

    时间戳是从格林威治时间1970年01月01日00时00分00秒开始至今所经过的秒数

    通过+%s来获取时间戳:

    示例:

    [hxy@iZ2zehtehrgzt3wqccrpyfZ CSDN]$ date +%s
    1710251847
    
    • 1
    • 2

    其中1710251847就是当前的时间戳。

    通过-d @1710252008,把时间戳转化为时间:

    示例:

    [hxy@iZ2zehtehrgzt3wqccrpyfZ CSDN]$ date -d @1710252008
    Tue Mar 12 22:00:08 CST 2024
    
    • 1
    • 2

    可以看到,1710252008时间戳代表的就是2024年3月12日22:00:08,我们也可以按照制定格式输出刚刚的时间戳:

    [hxy@iZ2zehtehrgzt3wqccrpyfZ CSDN]$ date +%X_%F -d @1710252008
    10:00:08 PM_2024-03-12
    
    • 1
    • 2

    现在我们再看一看0时间戳的时间:

    [hxy@iZ2zehtehrgzt3wqccrpyfZ CSDN]$ date -d @0
    Thu Jan  1 08:00:00 CST 1970
    
    • 1
    • 2

    可以看到,0时间戳确实是1970年1月1日,但是为什么是在早上8:00

    这是因为我们的Linux服务器在中国,中国在东八区,所以格林威治时间00时00:00时,东八区的时间就是8:00


    cal指令

    cal指令可以用来显示公历日历

    我们直接使用cal试试看:
    在这里插入图片描述
    可以看到,其输出了当前月份的日历,并且高亮标出了当前是几号

    接下来我们再看几个常用选项:

    • -3选项可以同时输出当前月份的前后一个月:

    在这里插入图片描述

    • -j选项,将数字从输出当月的第几号,改为输出当年的第几号:
    • 在这里插入图片描述
    • -y选项,输出目前一整年的日历:
    • 在这里插入图片描述

  • 相关阅读:
    lwip无法连接指定个数TCP连接问题
    06 Job/CronJob: 为什么不直接用Pod来处理业务?
    【填坑】THERE IS A CHART INSTANCE ALREADY INITIALIZED ON THE DOM
    【C++】——阶段性测验(帮助巩固C++前半部分知识)
    Java面向对象之接口和抽象类的区别一目了然
    C#设计模式详解(2)——Factory Method(工厂方法)
    RabbitMq-监控管理
    15.0_[Java 集合框架]-集合与框架
    css3 都有哪些新属性
    【网络】安装Nginx笔记
  • 原文地址:https://blog.csdn.net/fsdfafsdsd/article/details/136102740