验证 shell 脚本中的日期(使用 BSD 日期)
Validate a date in shell script (with the BSD date)
我通常使用以下命令验证 shell 脚本中的日期:
date "+%Y-%m-%d" -d "2017-01-28" > /dev/null 2>&1
is_valid=$?
这与 GNU 日期完美配合..但不适用于 BSD 日期。
知道如何对日期的 BSD 版本做同样的事情吗?
FreeBSD
date
不支持-d
标志,
date -f "%Y-%m-%d" -j "2017-01-28" >/dev/null 2>&1
is_valid=$?
(或)
date -f "%Y-%m-%d" -j "2017-01-28" >/dev/null 2>&1 && printf "Date validation success\n" || printf "Date validation fail\n"
我通常使用以下命令验证 shell 脚本中的日期:
date "+%Y-%m-%d" -d "2017-01-28" > /dev/null 2>&1
is_valid=$?
这与 GNU 日期完美配合..但不适用于 BSD 日期。 知道如何对日期的 BSD 版本做同样的事情吗?
FreeBSD
date
不支持-d
标志,
date -f "%Y-%m-%d" -j "2017-01-28" >/dev/null 2>&1
is_valid=$?
(或)
date -f "%Y-%m-%d" -j "2017-01-28" >/dev/null 2>&1 && printf "Date validation success\n" || printf "Date validation fail\n"