Bonjours à tous.
Néophyte total dans les syntaxes bash je me retrouve encore en prise avec sed.
je tente d'écrire mon premier script de plus de 5 lignes, le but étant d'extraire le nom des interfaces réseaux sur le pc et changer leurs adresses mac.
Pour celà je tente de crée ma première variable de ma vie.
le probleme est dans la syntaxte de sed:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 #!/bin/sh if [ $USER != "root" -o $UID != 0 ] then echo "Ce script doit être exécuté en tant qu'administrateur (root)." echo "Placez sudo devant votre commande :" echo "sudo $0" echo "Abandon" exit 1 fi var=$(ifconfig -a | sed 's/[ \t].*//;/^\(lo:\|\)$/d') ifdown $var >/dev/null 2>&1; macchanger -a $var >/dev/null 2>&1; ifup $var >/dev/null 2>&1; su neo -c 'notify-send "New Mac address has been assigned"';
me retourne le résultat suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part ifconfig -a | sed 's/[ \t].*//;/^\(lo:\|\)$/d'
enp0s25:
wlo1:
ma question est la suivante : comment retirer les ":" inscrit devant le nom des interfaces?
Au passage, avez-vous des livres ou des sites à conseiller au néophyte dans les syntaxes, je vous avous êtres hermétique depuis ma naissance aux équations et aux maths de manière générals, imagez ma tête déconfite devant des syntaxes
En vous remerciant d'avance pour votre temps. Hector
Partager