DAILY DOCDAILY DOC
Rust
Node
Notes
Ubuntu
Leetcode
  • it-tools
  • excalidraw
  • linux-command
Rust
Node
Notes
Ubuntu
Leetcode
  • it-tools
  • excalidraw
  • linux-command
  • linux
  • bash alias
  • chmod
  • linux useful command
  • date
  • extract translation from git diff
  • fail2ban
  • globbing
  • localhost
  • mail
  • memo 内存测试
  • nohup(no hang up)
  • setup env
  • ssh

    • ssh 教程
    • github clone
    • ssh.localhost.run 端口转发
    • ssh 安全
  • systemd service
  • 分析ubuntu系统登录日志文件
  • vpn

    • vpn 教程
    • Algo
    • clashX
    • firezone
    • lantern
    • pac 代理配置
    • Setup vpn
    • shadowsocks
    • VPN
    • VPN 速度优化
    • wireguard cron
    • 修改wireguard端口
  • webhook

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
%pAM/PMPM
%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 是一个灵活且强大的工具,结合其他命令可以满足各种时间和日期相关的需求。

Last Updated:
Contributors: rosendo
Prev
linux useful command
Next
extract translation from git diff