Expression régulière d'une adresse MAC

Résolu
x86master Messages postés 22 Date d'inscription   Statut Membre Dernière intervention   -  
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Je suis en galère pour faire l'expression régulière d'une adresse MAC.

En fait, je suis en train de faire un script bash contenant une commande sed qui, elle même, contient une expression régulière d'adresse MAC pour remplacer une @Mac quelconque contenu dans un fichier, afin de la remplacer par une autre que j'aurais saisit en paramètre du script bash.

Voici ma commande (ne marche pas...) :

sed "/host serveur1/,/host serveur2/ s/hardware ethernet ([0-9a-fA-F][0-9a-fA-F]:){5}([0-9a-fA-F][0-9a-fA-F]);/hardware ethernet $3;"/ dhcpd.conf

Quelqu'un aurait-il une idée ? J'ai cherché partout... rien...

Merci d'avance.
A voir également:

2 réponses

jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896
 
Salut,
sed "/host serveur1/,/host serveur2/ s/\(hardware ethernet \).*/\1$3;/" dhcpd.conf
;-))
0
x86master Messages postés 22 Date d'inscription   Statut Membre Dernière intervention  
 
Ouaip

J'ai déjà pensé à ça, ça marche mais je voudrais avoir un niveau de vérification plus élevé.

Parce qu'en tapant ta commande, qu'on ait rien, des bananes ou une @Mac, ça marchera quand même.

Ce que je voudrais est l'expression régulière exacte de l'@Mac.

Trop facile le .* :P

Merci
0
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896
 
sed -r "/host serveur1/,/host serveur2/ {/\b([0-9a-fA-F]{2}:){5}[0-9a-fA-F]{2};/ s//$3;/}" dhcp.conf
;-))
0
x86master Messages postés 22 Date d'inscription   Statut Membre Dernière intervention  
 
Vendu !

Merci m'sieur !!
0
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896 > x86master Messages postés 22 Date d'inscription   Statut Membre Dernière intervention  
 
De rien ;-))
0