MST
星途 面试题库

面试题:Bash中日期格式转换与运算

给定一个日期字符串,格式为MM/DD/YYYY,要求编写Bash脚本将其转换为YYYY - MM - DD格式,并计算该日期100天后的日期,同样以YYYY - MM - DD格式输出。
23.1万 热度难度
编程语言Bash

知识考点

AI 面试

面试题答案

一键面试
#!/bin/bash

date_str=$1

# 将MM/DD/YYYY格式转换为YYYY - MM - DD格式
new_date=$(date -d "$date_str" +%Y-%m-%d)
echo "转换后的日期: $new_date"

# 计算100天后的日期
future_date=$(date -d "$new_date + 100 days" +%Y-%m-%d)
echo "100天后的日期: $future_date"

将上述代码保存为一个脚本文件(例如date_convert.sh),然后在终端中使用以下命令运行脚本,并传入日期字符串作为参数:

bash date_convert.sh "01/01/2023"

其中"01/01/2023"替换为你要处理的实际日期字符串。

解释:

  1. date -d "$date_str" +%Y-%m-%d:使用date命令,-d选项用于指定日期字符串,然后按照%Y-%m-%d的格式输出。
  2. date -d "$new_date + 100 days" +%Y-%m-%d:在转换后的日期基础上,使用+ 100 days表示100天后,同样按照%Y-%m-%d格式输出。