Format date

Résolu/Fermé
coiaye - 22 avril 2009 à 11:16
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 23 avril 2009 à 09:50
Bonjour,
je cherche a verifier l format d'une date saisis par l'utilisateur de mon script ke je developp en ksh
j'ai essayé
echo $dateT | grep -q "[0-3][0-9]/[0-1][0-9]/[0-9]\{4\} [0-2][0-9]:[0-5][0-9]:[0-5][0-9]" >/dev/null 2>&1
mais le code retour est toujour 2 (different de 0) même si la date remplie les conditions du grep
une idée??
merci
A voir également:

2 réponses

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
22 avril 2009 à 13:34
Salut,

Extrait du man grep :
DIAGNOSTICS
       Normalement, le code de retour  est  0  si  des  concordances  ont  été
       trouvées,  et 1 si aucune concordances n'a été faite.  Mais le code est
       2 si une erreur est survenue, à moins que les options  -q,  --quiet  ou
       --silent ne soient utilisées et qu'une ligne ne soit trouvée.
Affiche le contenu de ta variable $dateT...

PS. Supprime le ">/dev/null 2>&1" avec le paramètre "-q" c'est suffisant.
0
slt jipicy,
j'ai essayé sans le /dev/null 2>&1

bash-3.00$ echo "11/12/2002 10:12:50" | grep -q "[0-3][0-9]/[0-1][0-9]/[0-9]\{4\} [0-2][0-9]:[0-5][0-9]:[0-5][0-9]"
grep: illegal option -- q
Usage: grep -hblcnsviw pattern file . . .
bash-3.00$ echo $?
2

par contre ça marche sans l'option -q:

bash-3.00$ echo "11/12/2002 10:12:50" | grep "[0-3][0-9]/[0-1][0-9]/[0-9]\{4\} [0-2][0-9]:[0-5][0-9]:[0-5][0-9]" > /dev/null 2>&1
bash-3.00$ echo $?
0


probleme résolue
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
23 avril 2009 à 09:50
Usage: grep -hblcnsviw pattern file . . .
Ben disons que le problème venait justement du fait que tu avais mis cette option (-q) qui générait le message d'erreur dans la mesure où ton grep ne la reconnait pas ;-((
0