hayou
Février 20, 2016, 10:48
1
bonjour,
j’ai écrit ce code mais je pense qu’il n’est pas du tout optimisé :
[code]#!/bin/sh
IPETH0=ifconfig eth0 | grep "inet ad" |cut -f2 -d: |awk '{print $1}' |cut -d '.' -f1
IPETH1=ifconfig eth0 | grep "inet ad" |cut -f2 -d: |awk '{print $1}' |cut -d '.' -f2
IPETH2=ifconfig eth0 | grep "inet ad" |cut -f2 -d: |awk '{print $1}' |cut -d '.' -f3
ADRESSE=echo $IPETH0.$IPETH1.$IPETH2
echo $ADRESSE
[/code]
Pouvez-vous m’aider?
Bonjour,
Ceci pourrais correspondre à ton attente :
[code]#!/bin/sh
ADRESSE=$(netstat -ie | sed -n ‘s/^.inet adr:([0-9] .).([0-9].).([0-9] .).([0-9].). $/\1.\2.\3.\4/p’)
echo $ADRESSE
[/code]
Il n’est pas nécessaire d’être root pour le lancer.
hayou
Février 20, 2016, 10:48
4
@ micky979 et MisterFreez : je n’affiche pas l’adresse ip en entier :
seulement les 3 premiers octets :
./iptest
=>> 192.168.0
vos scripts affiche toute l’adresse ip.
Bonjour,
Il suffit juste de corriger un peu le sed pour lui dire de ne pas prendre le dernier octect.
[code]#!/bin/sh
ADRESSE=$(netstat -ie | sed -n ‘s/^.inet adr:([0-9] .).([0-9].).([0-9] .)…*$/\1.\2.\3/p’)
echo $ADRESSE[/code]
hayou
Février 20, 2016, 10:48
6
Merci micky979, avec ton code on a l’adresse lo aussi. Donc voici le code final :
#!/bin/sh
TEMP=$(netstat -ie | sed -n 's/^.*inet adr:\([0-9]*.\)\.\([0-9]*.\)\.\([0-9]*.\)\..*$/\1.\2.\3/p')
ADRESSE=`echo $TEMP | awk '{print $1}'`
echo $ADRESSE
Merci à toi
Totor
Février 20, 2016, 10:48
7
Bonjour,
Ceci devrait faire l’affaire :
infos=$(ifconfig eth0)
adresse=${infos#*adr:}
echo ${adresse%.*Bcast*}
Salut,
La petite coche verte en bas à droite Fait !
Joli
C’est des commandes que je connais très mal.
hayou
Février 20, 2016, 10:48
10
@ ggoodluck47 : Merci
@ MisterFreez : tu fais quelle master ? je suis au cnam moi à grenoble aussi
Actuellement en première année de master informatique. L’an prochain en seconde année génie informatique, normalement en alternance en STMicroelectronics.
Totor
Février 20, 2016, 10:49
12
Et pourtant, une fois bien prises en main, toutes ces syntaxes bash sont forts pratiques car elles permettent de se passer de quelques outillages (cut, sed, tr …) qui impliquent la création/ destruction de processus, occupation/libération mémoire… et au final de gagner en perf sur de très gros traitements itératifs.