+
后接格式字符串,date “+%Y-%m-%d %H:%M:%S” 输出类似
2025-10-05 15:30:45`,支持%Y(年)、%m(月)、%d(日)、%H(时)、%M(分)、%S(秒)等参数,灵活适配日志、文件名等场景需求。
在Linux系统中,date
命令是管理和输出日期时间信息的重要工具,通过灵活使用格式控制符,用户可以根据需求自定义输出内容,本文将详细讲解date
命令的格式语法及实用场景,帮助您高效处理日期时间信息。
直接在终端输入date
命令,默认输出系统当前日期和时间:
date # 输出示例:Thu Jul 25 15:30:45 CST 2025
通过符号结合格式控制符,可精确控制输出内容:
date +"格式化字符串"
符号 | 说明 | 示例输出 |
---|---|---|
%Y | 四位年份 | 2025 |
%y | 两位年份 | 24 |
%m | 两位月份(01-12) | 07 |
%d | 两位日期(01-31) | 25 |
%H | 24小时制小时(00-23) | 15 |
%M | 分钟(00-59) | 30 |
%S | 秒(00-59) | 45 |
%A | 完整星期名称 | Thursday |
%a | 缩写星期名称 | Thu |
%B | 完整月份名称 | July |
%b | 缩写月份名称 | Jul |
%Z | 时区名称 | CST |
date +"%Y-%m-%d %H:%M:%S" # 输出示例:2025-07-25 15:30:45
date +"backup_%Y%m%d_%H%M%S.tar.gz" # 输出示例:backup_20250725_153045.tar.gz
date +"%A, %B %d %Y - %I:%M %p" # 输出示例:Thursday, July 25 2025 - 03:30 PM
TZ='America/New_York' date +"%Y-%m-%d %H:%M:%S %Z" # 输出示例:2025-07-25 03:30:45 EDT
# 输出1小时后的时间 date -d "1 hour" +"%H:%M" # 输出示例:16:30 # 输出3天前的日期 date -d "3 days ago" +"%Y-%m-%d" # 输出示例:2025-07-22
若提示date: invalid date
,检查命令语法或使用sudo
提权。
确保格式符字母大小写正确,例如%M
表示分钟,而%m
表示月份。