Maison >interface Web >tutoriel HTML >Utilisez la ligne de commande Shell pour obtenir l'adresse IP locale

Utilisez la ligne de commande Shell pour obtenir l'adresse IP locale

一个新手
一个新手original
2017-09-07 15:22:524762parcourir


Utilisez la ligne de commande Shell pour obtenir l'adresse IP locale

Entrez ifconfig sous mac ou entrez linux sous ip a pour obtenir les informations de notre carte réseau . Mais généralement, ce que nous devons vérifier, c'est notre adresse IP, et nous n'avons pas besoin de beaucoup d'informations. Donc, je veux extraire cette information.

L'implémentation suivante de mac ifconfig

Nous entrons ifconfig et nous obtiendrons une grande information Nous pouvons voir que la chaîne devant l'adresse IP que nous voulons est inet

Alors, optimisons le code comme suit :

ifconfig | grep inet
Obtenez les informations suivantes :

    inet 127.0.0.1 netmask 0xff000000
    inet6 ::1 prefixlen 128    inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
    inet6 fe80::85e:9798:4041:1717%en0 prefixlen 64 secured scopeid 0x4
    inet 192.168.12.139 netmask 0xffffff00 broadcast 192.168.12.255
    inet6 fd86:415c:c5f9::c72:1c02:f044:65de prefixlen 64 autoconf secured
    inet6 fd86:415c:c5f9::cd76:7bb1:f77d:46f0 prefixlen 64 deprecated autoconf temporary
    inet6 fd86:415c:c5f9::508d:685b:6a66:b3ce prefixlen 64 autoconf temporary
    inet6 fe80::9446:a1ff:fe5e:9b8f%awdl0 prefixlen 64 scopeid 0x9
    inet6 fe80::9d71:6fa:3da5:9cb6%utun0 prefixlen 64 scopeid 0xa
D'accord, il a été beaucoup rationalisé.

Nous pouvons obtenir notre adresse IP locale en excluant les informations de

et inet6 127

ifconfig | grep inet | grep -v inet6 | grep -v 127
Obtenir

    inet 192.168.12.139 netmask 0xffffff00 broadcast 192.168.12.255
Le devant est Nous ne le faisons pas. Nous ne nous soucions pas d'un caractère de tabulation. Nous le séparons par des espaces et prenons le deuxième champ pour obtenir nos informations IP

ifconfig | grep inet | grep -v inet6 | grep -v 127 | cut -d ' ' -f2
et nous pouvons obtenir avec succès l'autre adresse IP locale que nous voulons.

Nous créons un fichier

sous ~/.bin/ et utilisons getip pour accorder les autorisations d'exécution. Entrez ensuite chmod +x ~/.bin/getip dans la ligne de commande pour obtenir notre adresse IP locale. getip

Vous devez d'abord configurer

comme variable d'environnement. Veuillez vous référer à l'utilisation de cette commande comme commande système, qui peut être exécutée à tout moment~/.bin/

<.>sous Linux centos 7 Implémentez le script pour obtenir l'IP locale

n'utilise pas la commande

pour obtenir des informations, mais utilise linux pour les obtenir. ifconfigip aNous modifions donc la commande ci-dessus en

Étant donné que le devant des informations obtenues sous Linux n'est pas un caractère de tabulation mais un espace, nous avons ajouté
ip a | grep inet | grep -v inet6 | grep -v 127 | sed &#39;s/^[ \t]*//g&#39; | cut -d &#39; &#39; -f2
pour supprimer les espaces de début.

sed 's/^[ t]*//g'Les autres logiques sont les mêmes. Si vous le souhaitez, vous pouvez également le rendre global, et la logique est fondamentalement la même que celle de Mac.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn