GNU/Linux >> Linux Esercitazione >  >> Linux

Stampa indirizzo mac su file

ifconfig produrrà informazioni sulle tue interfacce, incluso l'indirizzo 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 

Il HWaddr è quello che vuoi, quindi puoi usare awk per filtrarlo:

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

Reindirizzalo in un file:

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

Ecco un moderno metodo Linux:

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

È moderno in quel ifconfig è stato a lungo deprecato a favore di ip dal iproute2 pacchetto, e quel grep ha il -P opzione per le espressioni regolari perl per l'asserzione look-behind positiva di larghezza zero.

grep -o è utile per l'estrazione del testo. sed è tradizionalmente usato per questo, ma trovo che le asserzioni di larghezza zero in stile perl siano più chiare di un comando di sostituzione sed.

In realtà non hai bisogno del -o (una riga) opzione a ip , ma preferisco usarlo durante l'estrazione delle informazioni di rete poiché lo trovo più pulito con un record per riga. Se stai eseguendo corrispondenze o estrazioni più complicate (di solito con awk ), -o è essenziale per uno script pulito, quindi per motivi di coerenza e uno schema comune, lo uso sempre.


#! /bin/sh

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

Ci sono altri strumenti che potrebbero eliminare l'indirizzo MAC da ifconfig L'uscita, ovviamente. Mi piace Perl.


Linux
  1. Trova l'indirizzo MAC in Ubuntu 21.10

  2. Trova l'indirizzo Mac nel filesystem?

  3. Ottenere l'indirizzo MAC

  4. Ottieni l'indirizzo MAC usando lo script della shell

  5. Come posso assegnare un IP tramite indirizzo MAC in dhcpd

Come modificare il file host in Linux, Windows o Mac

Come modificare l'indirizzo MAC di rete in Linux

Come modificare l'indirizzo MAC in Linux

Risolvere l'indirizzo Mac dall'indirizzo IP in Linux?

Come bloccare un indirizzo IP usando .htaccess?

Modificare l'ordine delle righe in un file