유효기간을 확인하고 있어요scrpt.bash test 2019-05-03
date -d $2 2>: 1>:; c=$?
1 이면 $c
날짜가 유효하지 않습니다. 입력하면 2019-05-03
올바른 0이 표시됩니다. 입력하면 2019-05-03u
0이 나오며 이는 잘못된 것입니다. 입력하면 2019-05-03uu
오류가 발생합니다. 날짜가 유효한지 어떻게 확인할 수 있나요?
답변1
날짜가 항상 "2019-05-03" 형식으로 제공되는 경우 항상 작동할 수 있습니다.
#!/bin/sh -
if [ -n "$2" ] && [ "$(date -d "$2" +%Y-%m-%d 2> /dev/null)" = "$2" ]; then
echo 'This date is valid'
fi