Bash Shell - 获取日期、时间
1. 使用date获取日期
以下代码将date的执行结果存储在today变量中。date 是获取日期和时间的命令。
选择使用 quotes(`)或$
#!/bin/bash
today=`date`
echo $today
today=$(date)
echo $today
2. 使用 Format 输出所需日期和时间
date +FORMAT
2.1 "MM-DD-YY" 形式输出日期
%m-%d-%y 或
MM-DD-YY
#!/bin/bash
today=`date +%m-%d-%y`
echo $today
2.2 "MM-YYYY" 形式输出日期
%m-%Y 或
MM-YYYY
#!/bin/bash
today=`date +%m-%Y`
echo $today
2.3 "MM/DD/YY" 形式输出日期
%D 或
MM/DD/YY
#!/bin/bash
today=`date +%D`
echo $today
3. 仅输出时间
%T
#!/bin/bash
time=`date +%T`
echo $time
3.1 仅输出时间 (12点钟格式输出)
%r
.
#!/bin/bash
time=`date +%r`
echo $time
3.2 HH:MM 格式输出时间
%H:%M
#!/bin/bash
time=`date +%H:%M`
echo $time
4. 输出具体日期和时间
4.1 输出当前日期前后一天的日期
#!/bin/bash
yesterday=`date -d "-1 days"`
echo $yesterday
tommorrow=`date -d "+1 days"`
echo $tommorrow
可以获取几周前/几周后或几个月前/之后的时间
#!/bin/bash
date=`date -d "+2 weeks"`
echo $date
date=`date -d "-3 months"`
echo $date
4.2 特定 Format 日期
#!/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] |