je débute en bourne shell et j'ai quelques questions.
1) Je veux tester si une variable correspond à une expression régulière et j'utilise:
if echo $salle |grep '[AB][0-4][0-9][0-9]$'> /dev/null; then
...
2 ) Un peu comme précemment fauf que je veux verifier que l'expression se trouve également en début de ligne d'un fichier :
if grep ^$login droits.txt > /dev/null && echo $login | grep '[a-z][a-z][a-z][a-z]$'; then
mais ca me parait pas très élegant. Peut-on faire plus simple?
3) Je voudrais recuperer 5 variables contenues dans une ligne et separées par ":". Je voudrais savoir comment faire à part 5 fois var=cat | cut
Merci ;)
# IFS et set
Posté par Bastien Mourgues . Évalué à 1.
OLD_IFS="${IFS}"
IFS=":"
set -- $ligne
IFS="${OLD_IFS}"
VAR1=$1
VAR2=$2
...
VAR5=$5
IFS sert à définir les séparateurs de champs du shell.
Après, pour ton grep, pourquoi tu ne fais pas ça dans le même grep ?
if echo $login | grep -qs '^[a-z][a-z][a-z][a-z]$';
then
...
# Tu fais quoi après ton grep?
Posté par totof2000 . Évalué à 2.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.