Bash Shell - 获取日期、时间

1. 使用date获取日期

以下代码将date的执行结果存储在today变量中。date 是获取日期和时间的命令。

选择使用 quotes(`)或$

bash 复制代码
#!/bin/bash

today=`date`
echo $today

today=$(date)
echo $today

2. 使用 Format 输出所需日期和时间

bash 复制代码
date +FORMAT

2.1 "MM-DD-YY" 形式输出日期

%m-%d-%y 或 ``MM-DD-YY

bash 复制代码
#!/bin/bash

today=`date +%m-%d-%y`
echo $today

2.2 "MM-YYYY" 形式输出日期

%m-%Y 或 ``MM-YYYY

bash 复制代码
#!/bin/bash

today=`date +%m-%Y`
echo $today

2.3 "MM/DD/YY" 形式输出日期

%D 或 ``MM/DD/YY

bash 复制代码
#!/bin/bash

today=`date +%D`
echo $today

3. 仅输出时间

%T

bash 复制代码
#!/bin/bash

time=`date +%T`
echo $time

3.1 仅输出时间 (12点钟格式输出)

%r.

bash 复制代码
#!/bin/bash

time=`date +%r`
echo $time

3.2 HH:MM 格式输出时间

%H:%M

bash 复制代码
#!/bin/bash

time=`date +%H:%M`
echo $time

4. 输出具体日期和时间

4.1 输出当前日期前后一天的日期

bash 复制代码
#!/bin/bash

yesterday=`date -d "-1 days"`
echo $yesterday

tommorrow=`date -d "+1 days"`
echo $tommorrow

可以获取几周前/几周后或几个月前/之后的时间

bash 复制代码
#!/bin/bash

date=`date -d "+2 weeks"`
echo $date

date=`date -d "-3 months"`
echo $date

4.2 特定 Format 日期

bash 复制代码
#!/bin/bash

date=`date -d "-3 months" "+%m-%d-%Y"`
echo $date

5. 多样的 Format

Format Description
date +%a 给出工作日的名称 [周一、周日、周五]
date +%A 给出工作日的名称 [星期一、星期日、星期五]
date +%b 给出月份名称 [一月、二月、三月]
date +%B 给出月份名称 [一月、二月、三月]
date +%d 显示月份中的日期 [05]
date +%D 显示当前日期 MM/DD/YY 格式 [11-01-21]
date +%F 以 YYYY-MM-DD 格式显示日期 [2021-11-01]
date +%H 以 24 小时格式显示时间 [22]
date +%I 以 12 小时格式显示时间 [11]
date +%j 显示一年中的第几天 [001 -- 366]
date +%m 显示月份[01-12]
date +%M 显示分钟 [00-59]
date +%s Unix 时间戳
date +%S 显示秒[00-59]
date +%N 以纳秒为单位显示
date +%T 将时间显示为 HH:MM:SS [24 小时格式]
date +%u 星期几 [1-7] 1 是星期一,6 是星期六
date +%U 显示一年中的周数 [00-53]
date +%Y 显示年份 YYYY [2021]
date +%Z 显示年份 YYYY [2021]
相关推荐
我是小鳄鱼17 小时前
Day 3: Bash 工具-- 30天复刻了一个 Claude Code
开发语言·bash
源文雨17 小时前
批量递归转换 mp4 为 flac/m4a 的 bash 脚本
开发语言·ffmpeg·bash·转码·mp4·m4a·flac
想唱rap2 天前
表的约束条件
linux·数据库·mysql·ubuntu·bash
倔强的石头1063 天前
【Linux指南】进程控制系列(四)进程替换 ——exec 系列函数全解析与应用
linux·运维·bash
tianyuanwo4 天前
Bash与Sh的诞生背景、底层原理及Linux多Shell解释器兼容性解析
linux·开发语言·bash
木风小助理5 天前
`mapfile`命令详解:Bash中高效的文本至数组转换工具
开发语言·chrome·bash
liliangcsdn8 天前
bash中awk如何切分输出
开发语言·bash
ASEpochs8 天前
Vsocde中‘sh’不是内部或外部命令,也不是可运行的程序或批量处理文件--已解决
git·vscode·bash
叠叠乐9 天前
bash sh为什么终端不能tab补全
开发语言·bash
Ken_11159 天前
CentOS7升级GNU Bash
bash