下面是一个比较日期和输入数字的shell脚本的示例代码:
#!/bin/bash
# 获取当前日期
current_date=$(date +"%Y-%m-%d")
# 输入数字
read -p "请输入一个数字: " input_number
# 将输入的数字转换为日期格式
input_date=$(date -d "$input_number days ago" +"%Y-%m-%d")
# 比较日期
if [[ $current_date > $input_date ]]; then
echo "当前日期($current_date)比输入日期($input_date)晚"
elif [[ $current_date < $input_date ]]; then
echo "当前日期($current_date)比输入日期($input_date)早"
else
echo "当前日期($current_date)和输入日期($input_date)相同"
fi
在上面的示例中,我们首先使用date
命令获取当前日期,并将其保存在current_date
变量中。然后,使用read
命令提示用户输入一个数字,并将其保存在input_number
变量中。
接下来,我们使用date -d
命令将输入的数字转换为相应的日期,并将其保存在input_date
变量中。date -d "$input_number days ago"
表示从当前日期往前推input_number
天。
最后,我们使用[[ $current_date > $input_date ]]
进行日期的比较。如果当前日期晚于输入日期,则输出当前日期晚于输入日期的提示信息;如果当前日期早于输入日期,则输出当前日期早于输入日期的提示信息;如果当前日期和输入日期相同,则输出当前日期和输入日期相同的提示信息。
你可以将上述代码保存到一个脚本文件中(比如compare_dates.sh
),然后在终端中运行该脚本。在脚本运行时,会提示你输入一个数字,然后输出相应的比较结果。