Я написал этот небольшой скрипт оболочки Unix для проверки формата даты. Мой скрипт должен проверить, находится ли строка в формате YYYYMMDDHHMMSS. Если он отсутствует в этом формате, он должен отправить сообщение об ошибке.Проверка формата даты Unix
Например, я объявила переменную a
и присвоила ей значение.
a=20150620223405
date "+%Y%m%d%H%M%S" -d $a > /dev/null 2>&1
if [ $? -ne 0 ]
then
echo "Invalid format"
else
echo "Valid format"
fi
Он всегда отображается как «Недопустимый формат», я хочу знать, что здесь является ошибкой и как действовать.
'date -d $ a +"% Ymd ... '? Я думаю, что если вы передали значение« NONSENSE »в качестве значения даты, то« date »вернет ошибку, но не имеет доступа к GNU дата прямо сейчас ;-(... Удачи всем. – shellter