我有一个 Bash shell 脚本,它检查 shell 变量是否包含数字:
if ! [[ "$step" =~ ^[0-9]+$ ]]
then
exec >&2; echo "error: $step is Not a step number.";
exit 1
fi
现在我需要进行类似的检查,以查看变量是否包含所需格式的日期,即YYYY-MM-DD
(例如:今天是 2013-05-13)和破折号。如何使用 Bash shell 中的正则表达式来完成此操作,或者我是否需要外部程序来执行此操作?