# Simple Script pour vérifier longueur d'une adresse mac

**URL:** <https://www.debian-fr.org/t/simple-script-pour-verifier-longueur-dune-adresse-mac/58216>\
**Category:** Programmation\
**Created:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/simple-script-pour-verifier-longueur-dune-adresse-mac/58216 "2016-02-21T17:38:01Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![anthony014](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/bbe5ce/32.png) [@anthony014](https://www.debian-fr.org/u/anthony014)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/simple-script-pour-verifier-longueur-dune-adresse-mac/58216/1 "2016-02-21T17:38:01Z")

</div>

Bonjour tous le monde,

J’essaye de créer un script qui doit vérifier si l’adresse MAC renseigné est correct. Si oui il va remplir un fichier texte sinon il enverra un message d’erreur.

Le problème est que j’ai toujours un message d’erreur…

Quelqu’un pourrait t-il me diriger vers la bonne solution car j’ai vu que la condition de if pourrait être entre 2 [[

```auto
#!/bin/sh
read -p 'Entrez le nom de votre machine:' nom
read -p "Entrez l'adresse IP de la machine (minuscule sans separateur):" adresseIP

if ["${#adresseIP}" -eq 12] then
                echo "#$nom" >>texte
                echo "$adresseIP" 'Cleartext-password :=' '"'$adresseIP'"' >>texte
else
                echo "L'adresse IP saisie est invalide"
fi
```

Le message d’erreur actuel est:

`./script.sh: 9: Syntax error: "else" unexpected (expecting "then")
`

---

<div class="post-metadata">

**Author:** ![nanard](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/n/6a8cbe/32.png) [@nanard](https://www.debian-fr.org/u/nanard)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/simple-script-pour-verifier-longueur-dune-adresse-mac/58216/2 "2016-02-21T17:38:01Z")

</div>

Comme ceci peut-être 😃

[code]#!/bin/sh  
read -p ‘Entrez le nom de votre machine:’ nom  
read -p “Entrez l’adresse IP de la machine (minuscule sans separateur):” adresseIP

if [“${#adresseIP}” -eq 12]  
then  
echo $nom  
echo $adresseIP “Cleartext-password :=” $adresseIP  
else  
echo "L’adresse IP saisie est invalide"  
fi[/code]

---

<div class="post-metadata">

**Author:** ![ricardo](https://www.debian-fr.org/user_avatar/www.debian-fr.org/ricardo/32/3864_2.png) [@ricardo](https://www.debian-fr.org/u/ricardo)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/simple-script-pour-verifier-longueur-dune-adresse-mac/58216/3 "2016-02-21T17:38:02Z")

</div>

[quote=«&nbsp;nanard&nbsp;»]Comme ceci peut-être 😃

[code]#!/bin/sh  
read -p ‹&nbsp;Entrez le nom de votre machine:&nbsp;› nom  
read -p «&nbsp;Entrez l’adresse IP de la machine (minuscule sans separateur):&nbsp;» adresseIP

if [«&nbsp;${#adresseIP}&nbsp;» -eq 12]  
then  
echo $nom  
echo $adresseIP «&nbsp;Cleartext-password :=&nbsp;» $adresseIP  
else  
echo «&nbsp;L’adresse IP saisie est invalide&nbsp;»  
fi[/code][/quote]  
C’est ce que je fais aussi pour plus de clarté mais dans sa ligne, je crois qu’il doit falloir ajouter un ‹&nbsp;;&nbsp;› avant le ‹&nbsp;then&nbsp;› ???

> [@](#):
>
> if [«&nbsp;${#adresseIP}&nbsp;» -eq 12] ; then

---

<div class="post-metadata">

**Author:** ![nanard](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/n/6a8cbe/32.png) [@nanard](https://www.debian-fr.org/u/nanard)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/simple-script-pour-verifier-longueur-dune-adresse-mac/58216/4 "2016-02-21T17:38:02Z")

</div>

Bien vu ça fonctionne aussi avec le point-virgule

[code]#!/bin/sh  
read -p ‘Entrez le nom de votre machine:’ nom  
read -p “Entrez l’adresse IP de la machine (minuscule sans separateur):” adresseIP

if [“${#adresseIP}” -eq 12] ;then  
echo $nom  
echo $adresseIP “Cleartext-password :=” $adresseIP  
else  
echo "L’adresse IP saisie est invalide"  
fi[/code]

---

<div class="post-metadata">

**Author:** ![ricardo](https://www.debian-fr.org/user_avatar/www.debian-fr.org/ricardo/32/3864_2.png) [@ricardo](https://www.debian-fr.org/u/ricardo)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/simple-script-pour-verifier-longueur-dune-adresse-mac/58216/5 "2016-02-21T17:38:02Z")

</div>

Mais, je suis comme toi, je préfère placer le ‘then’ sur une autre ligne, ça aère mieux.

---

<div class="post-metadata">

**Author:** ![anthony014](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/bbe5ce/32.png) [@anthony014](https://www.debian-fr.org/u/anthony014)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/simple-script-pour-verifier-longueur-dune-adresse-mac/58216/6 "2016-02-21T17:38:04Z")

</div>

Merci nanard et ricardo.

J’avais déjà essayé de mettre des espaces dans la condition du if mais sans succès. J’ai tellement modifier mon script que j’avais du faire une autre faute. Je dois passer pour un imbécile avec ma question maintenant… 🙂

Merci encore.

---

<div class="post-metadata">

**Author:** ![agentsteel](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/97f17d/32.png) [@agentsteel](https://www.debian-fr.org/u/agentsteel)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/simple-script-pour-verifier-longueur-dune-adresse-mac/58216/7 "2016-02-21T17:38:08Z")

</div>

Le sujet c’est pour vérifier la validité d’une adresse MAC?

Vérifier la longueur seule ce n’est pas le top, il y a mieux :

```auto
egrep ^\([0-9a-fA-F]{2}[-:]\){5}[0-9a-fA-F]{2}$
```

(regexp glanée qque part sur le net)
