GNU/Linux >> Tutoriels Linux >  >> Linux

Imprimer l'adresse mac dans le fichier

ifconfig affichera des informations sur vos interfaces, y compris l'adresse MAC :

$ ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:11:22:33:44:55  
          inet addr:10.0.0.1  Bcast:10.0.0.255  Mask:255.0.0.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:289748093 errors:0 dropped:0 overruns:0 frame:0
          TX packets:232688719 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:3264330708 (3.0 GiB)  TX bytes:4137701627 (3.8 GiB)
          Interrupt:17 

Le HWaddr est ce que vous voulez, vous pouvez donc utiliser awk pour le filtrer :

$ ifconfig eth0 | awk '/HWaddr/ {print $NF}'
00:11:22:33:44:55

Redirigez-le dans un fichier :

$ ifconfig eth0 | awk '/HWaddr/ {print $NF}' > filename

Voici une méthode Linux moderne :

ip -o link show dev eth0 | grep -Po 'ether \K[^ ]*'

C'est moderne dans ce ifconfig a longtemps été obsolète au profit de ip du iproute2 package, et que grep a le -P option pour les expressions régulières perl pour l'assertion positive de largeur nulle.

grep -o est agréable pour l'extraction de texte. sed est traditionnellement utilisé pour cela, mais je trouve les assertions de largeur nulle de style perl plus claires qu'une commande de substitution sed.

Vous n'avez pas réellement besoin du -o (une ligne) à ip , mais je préfère l'utiliser lors de l'extraction d'informations réseau car je trouve plus propre d'avoir un enregistrement par ligne. Si vous effectuez des correspondances ou des extractions plus compliquées (généralement avec awk ), -o est essentiel pour un script propre, donc par souci de cohérence et d'un modèle commun, je l'utilise toujours.


#! /bin/sh

/sbin/ifconfig eth0 | perl -ne 'print "$1\n" if /HWaddr\s+(\S+)/' >file

Il existe d'autres outils qui pourraient réduire l'adresse MAC de ifconfig 's de sortie, bien sûr. J'aime tout simplement Perl.


Linux
  1. Trouver l'adresse Mac dans le système de fichiers ?

  2. Obtenir l'adresse MAC

  3. Obtenir l'adresse MAC à l'aide du script shell

  4. Comment imprimer la sortie de la commande Linux dans un fichier ?

  5. Remplacer l'adresse MAC par UUID

Comment modifier le fichier Hosts sous Linux, Windows ou Mac

Comment changer l'adresse MAC du réseau sous Linux

Comment changer l'adresse MAC sous Linux

Résoudre l'adresse Mac à partir de l'adresse IP sous Linux ?

Définir une adresse Mac permanente dans Ubuntu 14.04 ?

Comment bloquer une adresse IP en utilisant .htaccess ?