Je suis en train de valider l'entrée à l'aide egrep et regex.Here est la ligne à partir du script (c-shell):Comment egrep script shell Unix variable
echo $1 | egrep '^[0-9]+$'
if ($status == 0) then
set numvar = $1
else
echo "Invalid input"
exit 1
endif
Si l'écho de tube I à egrep il fonctionne, mais il imprime également la variable sur l'écran, et c'est quelque chose dont je n'ai pas besoin.
J'ai utilisé l'option -c comme vous l'avez suggéré, et j'ai également défini une nouvelle variable à utiliser dans l'instruction if. set temp = 'echo $ 1 | egrep -c '^ [0-9] + $' ' if ($ temp! = 0) puis – Mike55
Dans csh, le statut de sortie est en effet stocké dans' $ status' –
J'ai ajouté une clarification à propos de csh et ajouterai un balise csh aussi. –