Cómo escribir escritura del golpe para buscar IP en un archivo y poner escribirlos en otro archivo?
Pregunta
Tengo que escribir un script bash que tendrá un archivo de salida nmap grepable que muestra las direcciones IP con el puerto 80 abierto y copiar las direcciones IP que tienen el puerto 80 abierto a otro archivo de texto. La salida es similar a esto:
# Nmap 4.76 scan initiated Thu Dec 3 13:36:29 2009 as: nmap -iL ip.txt -p 80 -r -R -PN --open -oA output
Host: 192.168.1.100 () Status: Up
Host: 192.168.1.100 () Ports: 80/open/tcp//http///
Host: 192.168.1.100 () Status: Up
# Nmap done at Thu Dec 3 13:36:29 2009 -- 3 IP addresses (3 hosts up) scanned in 0.28 seconds
Soy bastante nuevo en bash scripting así que no estoy seguro de por dónde empezar con esto. Si usted me puede ayudar con este script que sería muy apreciada.
Solución
esto se puede reducir a una llamada awk:
awk '/80\/open/{print $2}' infile > iplist_port_80
Otros consejos
Utilice grep y sed / awk
grep -e '80/open/tcp' infile | awk '{print $2}' | sort -u > outfile
sería mi primer intento.
no estar familiarizados con la invocación nmap y formato de salida, pero aún así, esto debería funcionar:
nmap | grep -e 'Ports:.80\/' |sed 's/Host:.//;s/.(.*//'|sort -u > out
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow