我有一个bash脚本,用于检查输入日期($ 1)是否落入日期范围/范围内。用户输入日期和(a或b,即$ 2)。关联数组名称替换和复制bash
#!/usr/bin/env bash
today=$(date +"%Y%M%d")
declare -A dict=$2_range
a_range=(["20140602"]="20151222" ["20170201"]="$today")
b_range=(["20140602"]="20150130")
for key in ${!dict[@]}; do
if [[ $1 -le ${dict[$key]} ]] && [[ $1 -ge $key ]]; then
echo $1 falls in the range of $2
fi
done
我不知道如何将关联数组复制到dict变量。 样本用法
$ ./script.sh 20170707 a
20170707 falls in the range of a
'b_range'不是一个范围。 – Jack
我有一个开始日期和结束日期作为键值对。它不是一个范围 – pdna
那么为什么'a_range'中有两个元素? – Jack