¿Obtiene el nombre y la interfaz de nic a través de la línea de comandos?

1

Lo que estoy tratando de hacer es obtener el nombre de la interfaz y el nombre de nic (descripción) a través de la línea de comandos en OS X.

En Windows, el siguiente comando me da el resultado que estoy buscando: wmic nic obtener nombre, índice (esto da como resultado, por ejemplo: 11 Realtek blah)

En OS X me gustaría ver: en0 Realtek como salida.

Gracias por su ayuda y perdón por mis explicaciones (es tarde en la noche y mi inglés no es tan bueno)

    
pregunta mvc001 04.08.2013 - 03:49

2 respuestas

2

Esta no es una forma bonita de hacerlo, pero le proporciona la información que desea:

system_profiler | grep "Interfaces" -A15

El comando es lento, principalmente debido a la cantidad de datos system_profiler . Pero como un resumen:

  1. system_profiler lista un montón de información sobre el sistema
  2. | es un "conducto" y coloca la salida de 1 a otro comando (3)
  3. grep busca patrones / palabras, en nuestro caso "Interfaces"
  4. El conmutador -A15 imprime las 15 líneas después de la coincidencia.

Salida de ejemplo:

  Interfaces:
    en0:
      Card Type: AirPort Extreme  (0x14E4, 0xEF)
      Firmware Version: Broadcom BCM43xx 1.0 (5.106.98.100.17)
      MAC Address: xx:xx:xx:xx:xx:xx
      Locale: FCC
      Country Code: US
      Supported PHY Modes: 802.11 a/b/g/n
      Supported Channels: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 149, 153, 157, 161, 165
      Wake On Wireless: Supported
      AirDrop: Supported
      Status: Connected
      Current Network Information:
        mynetwork:
          PHY Mode: 802.11n
          BSSID: xx:xx:xx:xx:xx:xx

Puede limitar -A15 a un número más bajo (por ejemplo, 3) para obtener solo el ID de la tarjeta y la versión del Firmware (es decir, ese será el chipset). Si eso es demasiada información, siempre puede obtener información sobre sus interfaces con ifconfig o network setup -listallhardwareports , pero ninguna de ellas incluye información sobre el chipset / manu a menos que desee analizarla fuera de la dirección MAC (primeros 6 caracteres, Creo que).

De lo contrario, podría considerar la instalación de lspci , pero probablemente esté en el ámbito de otra pregunta.

    
respondido por el nerdwaller 04.08.2013 - 06:28
0

Con un uso inteligente de awk / sed, probablemente puedas obtener lo que buscas de esta salida:

defaults read /Library/Preferences/SystemConfiguration/NetworkInterfaces

Para obtener la lista de interfaces en la máquina es bastante sencillo:

ifconfig -l

Probablemente sea mejor leer esa lista y recorrerla.

    
respondido por el miken32 06.08.2013 - 06:54

Lea otras preguntas en las etiquetas