如何在 Bash 脚本中显示时间61


在 Bash 脚本中,有几种方法可以显示时间。本文将介绍最常用的方法,并提供一些示例代码。

date 命令

最简单的方法是使用 date 命令。它输出当前日期和时间,格式为 ISO 8601。要使用 date 命令,只需在脚本中键入以下内容:
```bash
date
```

这将输出类似于以下内容:
```
2023-03-08T14:30:15Z
```

如果你想以特定格式显示时间,可以使用 -d 选项。例如,以下命令将以人类可读的格式显示时间:
```bash
date -d "$(date +%s)" "+%Y-%m-%d %H:%M:%S"
```

这将输出类似于以下内容:
```
2023-03-08 14:30:15
```

date +%s 命令

date +%s 命令返回当前时间戳。时间戳是一个数字,表示自 Unix 纪元(1970 年 1 月 1 日 00:00:00 UTC)以来经过的秒数。要使用 date +%s 命令,只需在脚本中键入以下内容:
```bash
date +%s
```

这将输出一个类似于以下内容的时间戳:
```
1646847415
```

printf 命令

printf 命令也可以用来显示时间。它提供了一种灵活的方式来格式化输出。要使用 printf 命令显示时间,可以使用以下语法:
```bash
printf "%(%format)T"
```

其中 %format 是时间格式字符串。可以使用以下格式说明符来格式化时间:
| 格式说明符 | 描述 |
|---|---|
| %a | 星期的缩写名称 |
| %A | 星期的完整名称 |
| %b | 月份的缩写名称 |
| %B | 月份的完整名称 |
| %c | 本地日期和时间 |
| %d | 月份中的日期 (01-31) |
| %H | 小时 (00-23) |
| %I | 小时 (01-12) |
| %j | 年中的天数 (001-366) |
| %m | 月份 (01-12) |
| %M | 分钟 (00-59) |
| %p | AM 或 PM |
| %S | 秒 (00-59) |
| %y | 年份的最后两位数字 (00-99) |
| %Y | 年份的完整数字 (0000-9999) |
| %Z | 时区 |

例如,以下命令将以人类可读的格式显示时间:
```bash
printf "%(%Y-%m-%d %H:%M:%S)T"
```

这将输出类似于以下内容:
```
2023-03-08 14:30:15
```
## 示例脚本

以下是一个示例脚本,它使用 date 命令显示当前时间:
```bash
#!/bin/bash
# 显示当前时间
date
# 显示当前时间戳
date +%s
# 使用 printf 命令显示时间
printf "%(%Y-%m-%d %H:%M:%S)T"
```

要运行此脚本,请将其保存为一个文件(例如 ),然后使用以下命令使其可执行:
```bash
chmod +x
```

然后,你可以使用以下命令运行脚本:
```bash
./
```

这将输出类似于以下内容:
```
2023-03-08 14:30:15
1646847415
2023-03-08 14:30:15
```

2024-12-21


上一篇:将 Bash 脚本编写到 Go 中

下一篇:bash 脚本:字符串替换利器