Son IP publique en une ligne de commande
Son IP publique en une ligne de commande
...
Modifié en dernier par kiri le mar. 19 juin 2018 12:26, modifié 1 fois.
- alain
- Administrateur du site
- Messages : 14806
- Enregistré le : dim. 11 oct. 2015 23:41
- Localisation : Chelles
- Contact :
Re: Son IP publique en une ligne de commande
Salut Kiri
Merci pour ce petit cours sur l'utilisation de grep et sed.
Comme j'ai dit dans la prèz de Kotec,
Je me suis penché (non je ne suis pas tombé ) sur les options que tu utilises. Car j'aimerai progresser un peu.
Il s'avère que je n'ai pas compris
le man de grep reste nébuleux, pour mon cerveau qui certes est fatigué, mais quand même...
Exemple: pour l'opton "o" :
et pour "P" :
Je prends donc acte que ça fonctionne, même si je n'ai pas compris comment tu as as fait, dans l'exemple avec ipecho, pour déterminer la syntaxe nécessaire à "P" pour ne garder
que ce qui est compris entre "is" et "/h1" :
Ni pourquoi le "<" du html devant "/h1" n’apparaît pas, vu qu'a première vu tu lui dis d’écrire ce qu'il y a devant "/h1"... Oui certainement que les "<" et ">" du html ont un comportement particulier, mais pourquoi???
Enfin bref, c'est pas bien grave, ni important, l'important c'est que ça fonctionne, et que je pourrais utiliser ces options pour me la péter sur le fofo
Ces temps ci, je n'ai pas le temps ni les capacités pour réfléchir et apprendre. Mais si tu veux au mois d’août j'aurai l’esprit un peu plus disponible vu que je serai
célibataire pour quelques semaines, J'ouvrirai peut être un sujet sur l'utilisation des commandes de filtrage. Car malgré une littérature importante sur le sujet
(merci @Arghlub pour les liens) j'y comprends pas grand chose...
Encore merci pour ce partage.
Merci pour ce petit cours sur l'utilisation de grep et sed.
Comme j'ai dit dans la prèz de Kotec,
Je me suis penché (non je ne suis pas tombé ) sur les options que tu utilises. Car j'aimerai progresser un peu.
Il s'avère que je n'ai pas compris
le man de grep reste nébuleux, pour mon cerveau qui certes est fatigué, mais quand même...
Exemple: pour l'opton "o" :
c'est c'la oui c'est c'la...N'imprimez que les parties appariées (non vides) d'une ligne correspondante, chacune de ces parties étant sur une ligne de sortie distincte.
et pour "P" :
Pas mieux...Interprétez le modèle comme une expression régulière compatible Perl (PCRE). Ceci est très expérimental et grep -P peut avertir de fonctionnalités non implémentées.
Je prends donc acte que ça fonctionne, même si je n'ai pas compris comment tu as as fait, dans l'exemple avec ipecho, pour déterminer la syntaxe nécessaire à "P" pour ne garder
que ce qui est compris entre "is" et "/h1" :
Tu l'as trouvé comment ça?'(?<=is ).*(?=<\/h1>)'
Ni pourquoi le "<" du html devant "/h1" n’apparaît pas, vu qu'a première vu tu lui dis d’écrire ce qu'il y a devant "/h1"... Oui certainement que les "<" et ">" du html ont un comportement particulier, mais pourquoi???
Enfin bref, c'est pas bien grave, ni important, l'important c'est que ça fonctionne, et que je pourrais utiliser ces options pour me la péter sur le fofo
Ces temps ci, je n'ai pas le temps ni les capacités pour réfléchir et apprendre. Mais si tu veux au mois d’août j'aurai l’esprit un peu plus disponible vu que je serai
célibataire pour quelques semaines, J'ouvrirai peut être un sujet sur l'utilisation des commandes de filtrage. Car malgré une littérature importante sur le sujet
(merci @Arghlub pour les liens) j'y comprends pas grand chose...
Encore merci pour ce partage.
PC are like air conditioning, they becomes useless when you open Windows (L.T)
PC1 : CM : ASRock 990FX | CPU: AMD FX 8350-8 cores, 4 GHz | RAM: 16 Go DDR3 1600 MHz | CG: ATI RX 580-8 Go | OS : LM 20.3 Uma Xfce 4.16 | K: 5.4
PC2 :Core2 Quad Q9650 @ 3 GHz | CG: Nvidia GTX 650TI | OS: LM 21.3 Xfce 4.18| K: 6.5
PC3 :Core i7-2600 @ 3,5 GHz | CG: ATI HD 4650 | OS: Emmade5 Xfce 4.18.0 | K: 6.1
PC4 : AMD Ryzen 5 3500X 4GHz | CG: GTX 970 | Ram : 8GB |OS : Debian 10.5 | K: 5.10
In a world without walls and fences, who needs windows and gates?
PC1 : CM : ASRock 990FX | CPU: AMD FX 8350-8 cores, 4 GHz | RAM: 16 Go DDR3 1600 MHz | CG: ATI RX 580-8 Go | OS : LM 20.3 Uma Xfce 4.16 | K: 5.4
PC2 :Core2 Quad Q9650 @ 3 GHz | CG: Nvidia GTX 650TI | OS: LM 21.3 Xfce 4.18| K: 6.5
PC3 :Core i7-2600 @ 3,5 GHz | CG: ATI HD 4650 | OS: Emmade5 Xfce 4.18.0 | K: 6.1
PC4 : AMD Ryzen 5 3500X 4GHz | CG: GTX 970 | Ram : 8GB |OS : Debian 10.5 | K: 5.10
In a world without walls and fences, who needs windows and gates?
Re: Son IP publique en une ligne de commande
...
Modifié en dernier par kiri le mar. 19 juin 2018 12:27, modifié 1 fois.
- alain
- Administrateur du site
- Messages : 14806
- Enregistré le : dim. 11 oct. 2015 23:41
- Localisation : Chelles
- Contact :
Re: Son IP publique en une ligne de commande
Ok, j'ai compris
Je faisais une erreur, en fait la patern2 (<\/h1>) comprend bien les "<>" du html. donc normal que le premier "<" ne soit pas affiché.
J'avais très mal lu et interprété
Je ne savais pas que grep contrairement à sed n'avais pas besoin qu'on annule le /.
Encore un truc que j'apprends.
Merci pour ces explications. J'ai bien d'autres questions, mais ça attendra août, car la je ne suis pas "open" , "aware" peut être?
Je faisais une erreur, en fait la patern2 (<\/h1>) comprend bien les "<>" du html. donc normal que le premier "<" ne soit pas affiché.
J'avais très mal lu et interprété
Je ne savais pas que grep contrairement à sed n'avais pas besoin qu'on annule le /.
Encore un truc que j'apprends.
Merci pour ces explications. J'ai bien d'autres questions, mais ça attendra août, car la je ne suis pas "open" , "aware" peut être?
PC are like air conditioning, they becomes useless when you open Windows (L.T)
PC1 : CM : ASRock 990FX | CPU: AMD FX 8350-8 cores, 4 GHz | RAM: 16 Go DDR3 1600 MHz | CG: ATI RX 580-8 Go | OS : LM 20.3 Uma Xfce 4.16 | K: 5.4
PC2 :Core2 Quad Q9650 @ 3 GHz | CG: Nvidia GTX 650TI | OS: LM 21.3 Xfce 4.18| K: 6.5
PC3 :Core i7-2600 @ 3,5 GHz | CG: ATI HD 4650 | OS: Emmade5 Xfce 4.18.0 | K: 6.1
PC4 : AMD Ryzen 5 3500X 4GHz | CG: GTX 970 | Ram : 8GB |OS : Debian 10.5 | K: 5.10
In a world without walls and fences, who needs windows and gates?
PC1 : CM : ASRock 990FX | CPU: AMD FX 8350-8 cores, 4 GHz | RAM: 16 Go DDR3 1600 MHz | CG: ATI RX 580-8 Go | OS : LM 20.3 Uma Xfce 4.16 | K: 5.4
PC2 :Core2 Quad Q9650 @ 3 GHz | CG: Nvidia GTX 650TI | OS: LM 21.3 Xfce 4.18| K: 6.5
PC3 :Core i7-2600 @ 3,5 GHz | CG: ATI HD 4650 | OS: Emmade5 Xfce 4.18.0 | K: 6.1
PC4 : AMD Ryzen 5 3500X 4GHz | CG: GTX 970 | Ram : 8GB |OS : Debian 10.5 | K: 5.10
In a world without walls and fences, who needs windows and gates?
- arghlub
- Administrateur du site
- Messages : 10421
- Enregistré le : dim. 21 mai 2017 08:19
- Localisation : Provence
- Contact :
Re: Son IP publique en une ligne de commande
Salut kiri et Alain
Pour Alain, je reviens sur :
- option -o de Grep
L'option -o permet de n'imprimer que la chaîne recherchée et pas la ligne entière. Et chaque motif trouvé est envoyé vers la sortie sur une nouvelle ligne.
Cela ne représente guère d'intérêt, sauf si on le couple avec des expressions régulières.
Un exemple simple pour comprendre :
- option -P de Grep
Les expressions régulières peuvent avoir plusieurs syntaxes :
Pour Alain, je reviens sur :
- option -o de Grep
L'option -o permet de n'imprimer que la chaîne recherchée et pas la ligne entière. Et chaque motif trouvé est envoyé vers la sortie sur une nouvelle ligne.
Cela ne représente guère d'intérêt, sauf si on le couple avec des expressions régulières.
Un exemple simple pour comprendre :
Code : Tout sélectionner
$ echo -e "aaa bbb\nccc ddd\naaaa bbbb"
aaa bbb
ccc ddd
aaaa bbbb
$ echo -e "aaa bbb\nccc ddd\naaaa bbbb" | grep "aa" # sans l'option o
aaa bbb
aaaa bbbb
$ echo -e "aaa bbb\nccc ddd\naaaa bbbb" | grep -o "aa" # avec l'option o
aa
aa
aa
Les expressions régulières peuvent avoir plusieurs syntaxes :
- expressions régulières basiques (BRE) : le grep par défaut ;
- expressions régulières étendues (ERE) : à utiliser avec «grep -E» (ou «egrep» déprécié) ;
- expressions régulières compatibles PERL (PCRE) qui ont une syntaxe dérivée du langage Perl : à utiliser avec «grep -P».
Tour1 (custom) • CM MSI Z270 M3 | CPU Intel I7-7700K | CG Nvidia GTX 1080 | RAM 16Go | tripleBoot : Debian 11 | MXlinux 21 | LMint 19.3 | XFCE
Tour2 (custom) • CM Gigabyte | CPU AMD Athlon 5200+ | CG Nvidia GTX 560 | RAM 6Go | FreeBSD 12.1 XFCE
Portable1 • MSI GF75 Thin 9SC | CPU Intel I7-9750H | CG Nvidia GTX 1650 | RAM 32Go | dualBoot : LMint 20.2 | MXlinux 21 | XFCE
Portable2 • MacBook Air A1466 (2015) | CPU Intel I5-5250U | CG Intel HD Graphics 6000 | RAM 8Go | dualBoot : macOS Sierra | MXlinux 21 XFCE
─────( pour une informatique libre ! -membre en stand-by de l' April.org────────────────
Tour2 (custom) • CM Gigabyte | CPU AMD Athlon 5200+ | CG Nvidia GTX 560 | RAM 6Go | FreeBSD 12.1 XFCE
Portable1 • MSI GF75 Thin 9SC | CPU Intel I7-9750H | CG Nvidia GTX 1650 | RAM 32Go | dualBoot : LMint 20.2 | MXlinux 21 | XFCE
Portable2 • MacBook Air A1466 (2015) | CPU Intel I5-5250U | CG Intel HD Graphics 6000 | RAM 8Go | dualBoot : macOS Sierra | MXlinux 21 XFCE
─────( pour une informatique libre ! -membre en stand-by de l' April.org────────────────
Re: Son IP publique en une ligne de commande
Message edité
T aurais pu faire plus simple.
Avec curl wget ou dig.
T aurais pu faire plus simple.
Avec curl wget ou dig.
Modifié en dernier par mpedro le dim. 17 juin 2018 11:33, modifié 2 fois.
Stretch 32bits cinnamon/Fedora25/Sarah
Compaq 8510p/MSI GE70/Raspberry Pi2
Compaq 8510p/MSI GE70/Raspberry Pi2
Re: Son IP publique en une ligne de commande
Merci pour la soluc mpedro
Ou alors c'est une question, là il manquerait le point d'interrogation
- alain
- Administrateur du site
- Messages : 14806
- Enregistré le : dim. 11 oct. 2015 23:41
- Localisation : Chelles
- Contact :
Re: Son IP publique en une ligne de commande
Salut Arghlub.
Okayyy, j'ai compris. C'est quand même plus facile a comprendre avec des exemples concrets ...Merci
Donc pour résumer et pour être bien certain que je ne me fourvoie pas en croyant avoir compris alors que non:
Toujours dans l'exemple de ipecho:
'(?<=is ).*(?=<\/h1>)' est une syntaxe dérivée du langage PERL.
Pour que grep la comprenne il faut lui mettre l'option -P.
Et pour qu'il n'affiche que la chaîne recherchée (entre is et </h1>) et non la totalité de la ligne qui est un truc du genre:
«<h1>Your IP is xxx.xxx.xxx.xxx</h1>» , il faut lui mettre l'option -o...
Okayyy, j'ai compris. C'est quand même plus facile a comprendre avec des exemples concrets ...Merci
Donc pour résumer et pour être bien certain que je ne me fourvoie pas en croyant avoir compris alors que non:
Toujours dans l'exemple de ipecho:
'(?<=is ).*(?=<\/h1>)' est une syntaxe dérivée du langage PERL.
Pour que grep la comprenne il faut lui mettre l'option -P.
Et pour qu'il n'affiche que la chaîne recherchée (entre is et </h1>) et non la totalité de la ligne qui est un truc du genre:
«<h1>Your IP is xxx.xxx.xxx.xxx</h1>» , il faut lui mettre l'option -o...
PC are like air conditioning, they becomes useless when you open Windows (L.T)
PC1 : CM : ASRock 990FX | CPU: AMD FX 8350-8 cores, 4 GHz | RAM: 16 Go DDR3 1600 MHz | CG: ATI RX 580-8 Go | OS : LM 20.3 Uma Xfce 4.16 | K: 5.4
PC2 :Core2 Quad Q9650 @ 3 GHz | CG: Nvidia GTX 650TI | OS: LM 21.3 Xfce 4.18| K: 6.5
PC3 :Core i7-2600 @ 3,5 GHz | CG: ATI HD 4650 | OS: Emmade5 Xfce 4.18.0 | K: 6.1
PC4 : AMD Ryzen 5 3500X 4GHz | CG: GTX 970 | Ram : 8GB |OS : Debian 10.5 | K: 5.10
In a world without walls and fences, who needs windows and gates?
PC1 : CM : ASRock 990FX | CPU: AMD FX 8350-8 cores, 4 GHz | RAM: 16 Go DDR3 1600 MHz | CG: ATI RX 580-8 Go | OS : LM 20.3 Uma Xfce 4.16 | K: 5.4
PC2 :Core2 Quad Q9650 @ 3 GHz | CG: Nvidia GTX 650TI | OS: LM 21.3 Xfce 4.18| K: 6.5
PC3 :Core i7-2600 @ 3,5 GHz | CG: ATI HD 4650 | OS: Emmade5 Xfce 4.18.0 | K: 6.1
PC4 : AMD Ryzen 5 3500X 4GHz | CG: GTX 970 | Ram : 8GB |OS : Debian 10.5 | K: 5.10
In a world without walls and fences, who needs windows and gates?
- arghlub
- Administrateur du site
- Messages : 10421
- Enregistré le : dim. 21 mai 2017 08:19
- Localisation : Provence
- Contact :
Re: Son IP publique en une ligne de commande
Tour1 (custom) • CM MSI Z270 M3 | CPU Intel I7-7700K | CG Nvidia GTX 1080 | RAM 16Go | tripleBoot : Debian 11 | MXlinux 21 | LMint 19.3 | XFCE
Tour2 (custom) • CM Gigabyte | CPU AMD Athlon 5200+ | CG Nvidia GTX 560 | RAM 6Go | FreeBSD 12.1 XFCE
Portable1 • MSI GF75 Thin 9SC | CPU Intel I7-9750H | CG Nvidia GTX 1650 | RAM 32Go | dualBoot : LMint 20.2 | MXlinux 21 | XFCE
Portable2 • MacBook Air A1466 (2015) | CPU Intel I5-5250U | CG Intel HD Graphics 6000 | RAM 8Go | dualBoot : macOS Sierra | MXlinux 21 XFCE
─────( pour une informatique libre ! -membre en stand-by de l' April.org────────────────
Tour2 (custom) • CM Gigabyte | CPU AMD Athlon 5200+ | CG Nvidia GTX 560 | RAM 6Go | FreeBSD 12.1 XFCE
Portable1 • MSI GF75 Thin 9SC | CPU Intel I7-9750H | CG Nvidia GTX 1650 | RAM 32Go | dualBoot : LMint 20.2 | MXlinux 21 | XFCE
Portable2 • MacBook Air A1466 (2015) | CPU Intel I5-5250U | CG Intel HD Graphics 6000 | RAM 8Go | dualBoot : macOS Sierra | MXlinux 21 XFCE
─────( pour une informatique libre ! -membre en stand-by de l' April.org────────────────