date
1. 显示当前日期和时间
date
输出示例:
Tue Dec 10 15:45:02 UTC 2024
2. 自定义日期和时间格式
使用 +
后跟格式化字符串,输出指定格式的日期时间。
常见格式说明:
格式符 | 含义 | 示例 |
---|---|---|
%Y | 年(四位) | 2024 |
%y | 年(两位) | 24 |
%m | 月(两位数) | 12 |
%d | 日(两位数) | 10 |
%H | 小时(24 小时制) | 15 |
%I | 小时(12 小时制) | 03 |
%M | 分钟 | 45 |
%S | 秒 | 02 |
%p | AM/PM | PM |
%A | 星期全称 | Tuesday |
%a | 星期简称 | Tue |
%B | 月全称 | December |
%b | 月简称 | Dec |
示例:
date "+%Y-%m-%d %H:%M:%S"
# 输出:2024-12-10 15:45:02
3. 获取指定时间
date
命令允许使用 -d
或 --date
参数查看特定日期或时间。
示例:
date -d "yesterday"
# 输出:Mon Dec 9 15:45:02 UTC 2024
date -d "next Friday"
# 输出:Fri Dec 13 00:00:00 UTC 2024
date -d "2024-12-25"
# 输出:Wed Dec 25 00:00:00 UTC 2024
4. 时间戳(UNIX 时间)
获取当前时间戳:
date +%s
# 输出:1733780702
将时间戳转为日期:
date -d @1733780702
# 输出:Tue Dec 10 15:45:02 UTC 2024
5. 设置系统时间(需要管理员权限)
sudo date -s "2024-12-10 15:45:00"
6. 计算日期
利用 -d
参数进行加减运算:
date -d "3 days ago"
# 输出:Sat Dec 7 15:45:02 UTC 2024
date -d "2 months 10 days"
# 输出:Thu Feb 20 15:45:02 UTC 2025
7. 保存输出到变量
current_date=$(date "+%Y-%m-%d")
echo $current_date
# 输出:2024-12-10
8. 结合其他命令
结合 find
查找特定时间的文件:
# 查找过去7天内修改的文件
find /path/to/dir -type f -mtime -7
date
是一个灵活且强大的工具,结合其他命令可以满足各种时间和日期相关的需求。