
¿Cómo puedo agregar saltos de línea entre mi egrep?
# nmap -sP 192.168.1.0/24 | egrep 'MAC|report'
Me gustaría agregar un salto de línea después de cada una de las dos líneas. ¿Cuál es la taquigrafía más eficiente?
Básicamente, me gustaría que el resultado se muestre así:
Nmap scan report for 192.168.1.7
MAC Address: C4:42:02:xx:xx:xx (Samsung Electronics Co.)
Nmap scan report for 192.168.1.8
MAC Address: 04:F1:3E:xx:xx:xx (Apple)
Nmap scan report for 192.168.1.10
MAC Address: 70:18:8B:xx:xx:xx (Hon Hai Precision Ind. Co.)
Respuesta1
Me gustaría agregar un salto de línea después de cada una de las dos líneas.
La solución a este problema literal esaquí. En tu caso:
nmap -sP 192.168.1.0/24 | egrep 'MAC|report' | sed '0~2 s/$/\n/g'
Sin embargo, he visto nmap
resultados en los que algunos informes pierden su MAC
línea, por lo que (en lugar de contar líneas a ciegas) preferiría una nueva línea antes de cada Nmap
, a menos que esté en la primera línea:
nmap -sP 192.168.1.0/24 | egrep 'MAC|report' | sed '1! s/^Nmap/\nNmap/'
Respuesta2
se me ocurrio
nmap -sP 192.168.10/24 | egrep 'MAC|report|Host is up' | sed '/Host is/c\\r'
Esto busca la cadena adicional "El host está activo" y luego la reemplaza con un retorno de carro.
Esto da como resultado el siguiente resultado:
Nmap scan report for 192.168.1.1
MAC Address: 00:0E:C6:C7:93:38 (Asix Electronics)
Nmap scan report for (192.168.1.254)
MAC Address: 1C:C1:DE:80:53:55 (Hewlett Packard)
Nmap scan report for 192.168.1.250