如何在 Bash 脚本中获取当前日期和时间

2023-11-15

作为一种脚本语言,Bash 广泛用于系统管理任务和自动化。 Bash 脚本中的一项常见任务是获取当前日期和时间。这`date`命令以特定格式返回当前日期和时间,但您也可以使用自定义格式字符串来获取任何格式的日期和时间

在本文中,我们将探讨如何在 Bash 脚本中获取当前日期和时间。

获取当前日期和时间

在 Bash 中,您可以使用 date 命令来获取当前日期和时间。默认情况下,date 命令将以“Day_of_week Month Day Hour:Minute:Second Timezone Year”的格式返回当前日期和时间

例如:

date 

Sun Feb 28 23:26:13 UTC 2023

您还可以将命令的输出存储在变量中以供进一步使用。

1
2
3
4
5
#!/bin/bash
当前日期时间=$(date)
echo “当前日期和时间:$current_date_time”
 
# 输出:当前日期和时间:Sun Feb 28 23:26:13 UTC 2023

自定义格式输出

有几个开关可用于格式化 date 命令的输出。

  • 获取日期时间“月/日/年 时:分:秒” format:
    date +"%D %T" 
    
    03/25/17 14:40:32
    
  • 获取当前的 Unixepoch time:
    date +%s 
    
    1554542637
    
  • 获取日期时间“年-月-日 时:分:秒” format:
    date +"%Y-%m-%d %T" 
    
    2019-03-25 14:40:32
    
  • Here is more common date time formats:
    Parameter Output
    date +”%m/%d/%Y” 03/25/2019
    date +”%d-%b-%Y” 25-Mar-2019
    date +”%Y %b %m” 2019 Mar 25
    date +”%H:%M” 14:40
    date +”%I:%M %p” 02:40 PM
    date +”%H:%M:%S” 14:40:32
    date +”%I:%M:%S %p” 02:40:32 PM
    date +”%m/%d/%Y %H:%M” 03/25/2019 14:40
    date +”%A, %m %d %Y %H:%M” Monday, 03 25 2019 14:40
    date +”%A, %b %d, %Y %I:%M %p” Monday, Mar 25, 2019 02:40 PM
    date +”%A, %b %d, %Y %H:%M:%S” Monday, Mar 25, 2019 14:40:32

在 Shell 脚本中使用日期:

您可以简单地在 shell 脚本中使用 date 命令,类似于在命令提示符下使用。创建包含以下内容的 bash 脚本 getDateTime.sh。

1
2
3
4
5
6
7
8
9
10
#!/bin/bash
 
当前日期=`date +“%Y-%m-%d %T”`
仅当前日期=`date +“%b %d,%Y”`
当前时间=`date +“%Y-%m-%d %T”`
 
echo Current Date is: ${仅当前日期}
echo Current Date and Time is: `date +“%Y-%m-%d %T”`
echo Current Date and Time is: ${当前日期}
echo Current Unix epoch time is: ${当前时间}

现在从命令行执行脚本并观察输出。

./getDateTime.sh 

Current Date is: Mar 25, 2019
Current Date and Time is: 2019-03-25 17:18:19
Current Date and Time is: 2019-03-05 17:18:19
Current Unix epoch time is: 1488541699

date 命令的可用选项:

您可以使用 –help 参数找到 date 命令的所有可用选项

date --help 

您会发现如下所示的输出以及更多选项。

  • %%: 字面量 %
  • %a:区域设置的工作日缩写名称(例如 Sun)
  • %A:区域设置的完整工作日名称(例如星期日)
  • %b:区域设置的月份名称缩写(例如 Jan)
  • %B:区域设置的完整月份名称(例如,一月)
  • %c:区域设置的日期和时间(例如,Thu Mar 3 23:05:25 2005)
  • %C:世纪;与 %Y 类似,但省略最后两位数字(例如 21)
  • %d:一月中的某一天(例如 01)
  • %D: 日期;与 %m/%d/%y 相同
  • %e:一月中的某一天,空格填充;与 %_d 相同
  • %F:完整日期;与 %Y-%m-%d 相同
  • %g:ISO 周数年份的最后两位数字(参见 %G)
  • %G:ISO 年份周数(参见 %V);通常仅与 %V 一起使用
  • %h: 与 %b 相同
  • %H: 小时 (00..23)
  • %I: 小时 (01..12)
  • %j:一年中的某一天(001..366)
  • %k:小时(0..23)
  • %l: 小时 (1..12)
  • %m: 月 (01..12)
  • %M:分钟 (00..59)
  • %n: 换行符
  • %N:纳秒(000000000..999999999)
  • %p:区域设置相当于 AM 或 PM;如果不知道则为空白
  • %P: 类似 %p,但小写
  • %r:区域设置的 12 小时制时间(例如 11:11:04 PM)
  • %R:24小时制的小时和分钟;与 %H:%M 相同
  • %s:自 1970-01-01 00:00:00 UTC 以来的秒数
  • %S:第二个(00..60)
  • %t: a tab
  • %T: 时间;与 %H:%M:%S 相同
  • %u:星期几(1..7); 1 是星期一
  • %U:一年中的周数,星期日为一周的第一天 (00..53)
  • %V:ISO 周数,星期一为一周的第一天 (01..53)
  • %w:星期几(0..6); 0 是星期日
  • %W:一年中的周数,星期一为一周的第一天 (00..53)
  • %x:区域设置的日期表示(例如,12/31/99)
  • %X:区域设置的时间表示(例如 23:13:48)
  • %y:年份的最后两位数 (00..99)
  • %Y: year
  • %z: +hhmm 数字时区(例如 -0400)
  • %:z: +hh:mm 数字时区(例如-04:00)
  • %::z: +hh:mm:ss 数字时区(例如-04:00:00)
  • %:::z: 数字时区 : 达到必要的精度(例如,-04、+05:30)
  • %Z:字母时区缩写(例如 EDT)

结论

在 Bash 脚本中获取当前日期和时间是一项常见任务,可以使用 date 命令完成。默认情况下,date 命令以特定格式返回当前日期和时间,但您也可以使用自定义格式字符串来获取任何您喜欢的格式的日期和时间。通过了解如何在 Bash 脚本中使用 date 命令,您可以构建使用当前日期和时间的强大自动化脚本。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Bash 脚本中获取当前日期和时间 的相关文章

随机推荐

  • Bash 中单引号和双引号的区别

    Bash 是大多数 Linux 发行版中使用的 shell 它提供了多种引用字符串的方法 其中 单引号 和双引号 是最常用的 虽然它们可能看起来相似 但它们具有不同的行为 并且会影响 shell 解释字符串内容的方式 在本文中 我们将探讨
  • 如何在AWS实例中创建和添加EBS卷

    Amazon EBS 弹性块存储 提供持久块存储以与 Amazon 实例一起使用 每个 Amazon EBS 卷都提供高可用性和持久性 它能够在其可用区中自动复制 以保护您免受组件故障的影响 本文将帮助您创建 EBS 卷并将其添加到现有实例
  • 下载 CentOS 7 – DVD ISO 映像

    CentOS 是一个 Linux 操作系统 它是 Red Hat Enterprise Linux 100 兼容的重建版 用户可以免费下载并使用该企业级操作系统 CentOS 项目宣布了发行版的新更新 发布了CentOS 7 9它源自 Re
  • 如何从完整 MySQL 转储文件中提取表备份

    mysql转储是 MySQL MariaDB 提供的用于备份数据库和表的实用程序 一般来说 我们会定期对数据库进行完整转储并保留它 但有时我们需要从备份中恢复单个或 2 3 个表 那么问题是如何从完整备份文件中恢复特定的表 本文将帮助您了解
  • 如何在CentOS/RHEL 9/8中安装Nagios服务器

    Nagios 是一款开源监控软件 允许系统管理员监控服务器 应用程序和网络设备的运行状况和性能 Nagios 提供了一个用于监控 IT 基础设施的全面解决方案 并可以在潜在问题变得严重之前向管理员发出警报 在本文中 我们将介绍在 CentO
  • 在 Linux 中使用命令将用户添加到辅助组中

    次要组是用户创建后添加的组 主要组是在用户创建过程中创建的 为了权限 它们之间没有区别 本快速教程可帮助您通过命令行将现有用户添加到 Linux 中的辅助组 Example Use the usermod command line tool
  • 最有效的 WordPress 行业特定插件

    WordPress WP 完全开源且价格极其实惠 是最独特 最流行的内容管理系统 CMS 之一 事实上 可以肯定的是 如果没有它 博客圈和现代商业世界都会完全不同 它的独特之处在于其众多的插件 其中一些插件是针对特定行业手工定制的 为所有使
  • Tomcat 默认管理员密码是什么

    安装新的 Tomcat 服务器后 默认情况下不会创建用于访问 Administrator 和 Manager Web 界面的用户 完成安装后 设置 Tomcat Admin 和 Manager 用户帐户并设置其密码 您还可以访问我们以下有关
  • 如何在 Apache 中仅允许 GET 和 POST 方法

    Apache HTTP Server 俗称 Apache 是世界上最流行 使用最广泛的 Web 服务器软件系统之一 它提供了许多功能 包括基于 HTTP 方法限制对资源的访问的能力 当您出于与安全或应用程序逻辑相关的原因而只想允许某些类型的
  • 使用 CRON 监控和通知 Linux 中的服务状态

    监控 Linux 系统上运行的关键服务的状态对于确保平稳 不间断的运行至关重要 实现此目的的一种方法是使用 cron 作业定期检查这些服务的状态 并在其状态发生变化时发送通知 在本文中 我们将探讨如何设置 cron 作业来监控服务状态 并讨
  • 如何从 CentOS 6.9-6.0 升级 CentOS 6.10

    CentOS 6 10已经发布 如果您使用旧版本 6 x 版本的 CentOS 操作系统 本文将帮助您将 CentOS 升级到最新版本 6 10 这个新版本有很多安全更改和软件包更新 目前 我的服务器运行的是 CentOS 6 9 请按照以
  • 在 Bash 中使用模运算符 (%)

    在编程中 模数或余数是返回除法余数的运算 在 Bash 中 模运算符由 符号表示 模运算符通常在编程中用于检查一个数字是否可以被另一个数字整除或执行需要循环模式的运算 在本文中 我们将探讨如何在 Bash 中使用模运算符 Syntax Ba
  • 什么是 MAC 地址?

    了解 MAC 地址的功能和重要性对于任何处理计算机网络 无论是家庭网络还是复杂的企业设置 的人来说都是至关重要的 本文提供了全面的指南媒体访问控制 MAC 地址 它们在网络通信中的作用以及它们在当今数字世界中的重要性 什么是 MAC 地址
  • 使用 cURL 发送电子邮件的分步指南

    cURL 短缺 URL 客户端 是一个开源软件项目 它提供了一个库 libcurl 和一个命令行工具 curl 用于使用各种网络协议传输数据 虽然它通常用于与 HTTP 和 HTTPS 交互 但它也可以处理 SMTP 这是在互联网上发送电子
  • 如何在 Ubuntu 和 Debian 上安装和使用 Imapsync

    Imapsync是一种 IMAP 传输工具 用于将电子邮件从一个 IMAP 服务器复制到另一个 IMAP 服务器 本文将帮助您在 Ubuntu Debian 和 Linuxmint 系统上安装 imapsync 并在两个 IMAP 服务器之
  • Linux 中不存在目录时如何创建

    Linux 是全球数百万用户使用的流行操作系统 使用 Linux 时的一项常见任务是创建和管理目录 在本文中 我们将介绍如何在 Linux 中创建目录 仅当目录尚不存在时 这在编写脚本或执行需要创建多个具有唯一名称的目录的任务时非常有用 使
  • 解决 Flask 中的“AssertionError:视图函数映射正在覆盖现有端点函数”错误

    Flask 是一种广泛使用的用 Python 编写的微型 Web 框架 它因其简单性和为开发人员提供的控制而广受欢迎 但是 与任何其他框架一样 开发人员在使用 Flask 时可能会遇到错误 其中一个错误是 断言错误 视图函数映射正在覆盖现有
  • 如何在 Linux 中打开端口

    在 Linux 操作系统中 端口是用于通过网络发送或接收数据的通信端点 网络端口由数字标识 每个端口号与特定类型的网络服务相关联 例如 端口 80 用于 HTTP 流量 端口 21 用于 FTP 端口 25 用于电子邮件 为了建立网络连接
  • 在 Bash 中使用管道 (|) 运算符

    Bash 脚本是管理和在类 Unix 系统上工作的一个组成部分 管道运算符 是 Bash 脚本工具包中一个非常强大的工具 尽管外观简单 但它是高效命令行操作 简化流程和实现复杂数据操作的基石 本文深入探讨了管道运算符的使用 探讨它是什么 它
  • 如何在 Bash 脚本中获取当前日期和时间

    作为一种脚本语言 Bash 广泛用于系统管理任务和自动化 Bash 脚本中的一项常见任务是获取当前日期和时间 这 date 命令以特定格式返回当前日期和时间 但您也可以使用自定义格式字符串来获取任何格式的日期和时间 在本文中 我们将探讨如何