Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/11/2006, 16h11   #1
Nouveau Membre du Club
 
Inscription : juin 2006
Messages : 192
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 192
Points : 39
Points : 39
Par défaut Cherche test sur variable

bijour a tous,

je cherche a tester une variable en shell poue limiter le nombres de caracteres a la saisie ....

ex:
Code :
1
2
3
4
5
6
 
while [[ -z "$AGENT" ]]
do
  print "Taper un nom d'agent (ex : toto):"
  read AGENT
done
le but est que "agent" ne doit pas depasser 8 caracteres ???? svouplai !!

merci.
nenekes est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/11/2006, 16h36   #2
Modérateur
 
Avatar de ggnore
 
Inscription : juillet 2004
Messages : 2 245
Détails du profil
Informations personnelles :
Âge : 33

Informations forums :
Inscription : juillet 2004
Messages : 2 245
Points : 1 902
Points : 1 902
tu peux essayer d'utiliser wc, mais je crois qu'il y a mieux à faire.
__________________
Toutes les vertus des hommes se perdent dans l’intérêt comme les fleuves se perdent dans la mer.
ggnore est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/11/2006, 17h21   #3
Nouveau Membre du Club
 
Inscription : juin 2006
Messages : 192
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 192
Points : 39
Points : 39
en cherchant je viens de bidouiller un truc ....

si ca peut servire le vla
Code :
1
2
3
4
5
6
7
8
9
 
while [[ -z "$AGENT" || ${#AGENT} -ge 8 ]]
do
  if [[ ${#AGENT} -gt 8 ]] then
    print "AGENT ne doit pas excéder 8 caractères!"
  fi
  print "Taper un nom d'agent (ex : toto):"
  read AGENT
done
grand merci

a pliche
nenekes est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/11/2006, 18h32   #4
Invité de passage
 
Inscription : novembre 2006
Messages : 4
Détails du profil
Informations forums :
Inscription : novembre 2006
Messages : 4
Points : 2
Points : 2
On peut aussi écrire plus condensé:
while [[ ( -z "$AGENT" ) || ( ${#AGENT} -gt 8 ) ]]
do
print "Taper un nom d'agent (ex : toto):"
read AGENT
done
pilou06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h02.


 
 
 
 
Partenaires

Hébergement Web