当前位置: 首页 > article >正文

Linux中的date命令

Linux中的date命令

        • 1、date指令
        • 2、日期时间计算





1、date指令

在Linux操作系统中,date指令是一个用于显示和设置系统日期和时间的基本工具,它不仅可以显示当前的日期和时间,还允许用户以不同的格式输出日期和时间,并进行日期时间的计算

date指令的语法格式如下:

date [OPTION] [+FORMAT]
  • OPTION:选项,用于指定操作。常用选项如下:
    • -d:以特定格式显示指定日期时间的字符串,字符串前后必须加双引号
    • -s:设置系统日期和时间,字符串前后必须加双引号
    • -r:显示文件的最后修改时间
  • FORMAT:输出格式,以+开头,后面跟日期时间格式。常用日期格式参数如下:
    • %Y:YYYY格式的年份
    • %y:YY格式的年份
    • %m:mm格式的月份(01~12)
    • %d:dd格式的日(01~31)
    • %H:HH格式的小时(00-23)
    • %M:MM格式的分钟(00-59)
    • %S:SS格式的秒数(00-59)
    • %F:YYYY-mm-dd格式的日期,同%Y-%m-%d
    • %T:HH-MM-SS格式的时间,同%H:%M:%S
    • %s:从1970年1月1日00:00:00到目前经历的秒数
    • %c:日期和时间(Tue Nov 20 22:13:52 2024)
    • %w:星期几(0-6),0表示星期天
    • %u:星期几(1-7),7表示星期天

值得注意的是,以上格式可以任意组合,还可以包括非格式字符串,例如:

date "+今天是%Y-%d-%m,现在是$H:%M:%S"
2、日期时间计算

1) 当前日期时间(今天)

date +"%Y-%m-%d $H:%M:%S"
date -d today +"%Y-%m-%d"
date -d now +"%Y-%m-%d"

2) 前一天(昨天)

date -d "-1 day" +"%Y-%m-%d"
date -d yesterday +"%Y-%m-%d"
date -d "1 day ago" +"%Y-%m-%d"

3) 一周前(上周)

date -d "1 week ago" +"%Y-%m-%d"

4) 一月前(上月)

date -d "-1 month" +"%Y-%m-%d"
date -d last-month +"%Y-%m-%d"

5) 一年前(去年)

date -d "-1 year" +"%Y-%m-%d"
date -d last-year +"%Y-%m-%d"

6) 一小时前

date -d "1 hour ago" +"%Y-%m-%d $H:%M:%S"
date -d "last-hour" +"%Y-%m-%d $H:%M:%S"

7) 一分钟前

date -d "1 minute ago" +"%Y-%m-%d $H:%M:%S"

8) 一秒前

date -d "1 second ago" +"%Y-%m-%d $H:%M:%S"

9) 上月第一天

date -d "$(date +%Y-%m-01) -1 month" +"%Y-%m-%d"

10) 上月最后一天

date -d "$(date +%Y-%m-01) -1 day" +%Y-%m-%d

11) 日期循环

#!/bin/bash

sta_date=2025-01-01
end_date=2025-06-01
sta_sec=`date -d "$sta_date" "+%s"`
end_sec=`date -d "$end_date" "+%s"`
for((i=$sta_sec;i<=$end_sec;i+=86400));do
    date -d "@$i" +"%Y-%m-%d"
done


参考文章:
https://www.cnblogs.com/raphael5200/p/5114821.html
https://blog.csdn.net/qq_33216613/article/details/142135530



http://www.kler.cn/a/560806.html

相关文章:

  • JavaSE学习笔记26-集合(Collection)
  • 【DeepSeek-R1背后的技术】系列十一:RAG原理介绍和本地部署(DeepSeekR1+RAGFlow构建个人知识库)
  • 数据结构:哈希表(unordered_map)
  • Eureka、ZooKeeper 和 Nacos 之间的对比
  • 八大排序算法(C语言实现)
  • ABC381E题解
  • 【1】VS Code 新建上位机项目---C#基础语法
  • LLM学习
  • HarmonyOS使用系统图标
  • java读写磁盘文件
  • Oracle Fusion Middleware 12C安装 - 呆瓜式
  • 支持向量机 (Support Vector Machine, SVM)
  • [C语言日寄]以指针进阶:空类型指针与qsort函数
  • Qt Creator 设计界面后的预览方法
  • `sh` 与 `bash` 的区别详解
  • dify本地部署
  • next.js-学习2
  • Python 学习之旅:高级阶段(十六)Web 开发之路由和视图函数
  • Linux 高级篇 日志管理、定制自己的Linux系统、备份与恢复
  • HarmonyOS NEXT通过关系型数据库实现数据的持久化