Buenas tardes, compañeros y compañeras de Underc0de!
Trabajando en un script me encontré con un problema que no sé cómo solucionar dada mi falta de experiencia y conocimientos. Estoy iniciandome en el mundo del scripting en linux y me gustaría saber cómo solucionarlo.
Estaba intentando automatizar el escaneo de IP's y mostrar el output tabulando cada linea de tal forma que el resultado quedara como:
IP: 192.168.0.1
22/tcp open ssh
80/tcp open http
443/tcp open ssl/http
Pero en lugar de obtenerlo de esa forma, realiza la tabulación con cada palabra por haber espacios entre ellas, de tal forma que el resultado es:
IP: 192.168.0.1
22/tcp
open
ssh
80/tcp
open
http
443/tcp
open
ssl/http
El script es el siguiente:
#!/bin/bash
for ip in $(sudo nmap -sP 192.168.1.0/24 | grep "Nmap scan report" | cut -d " " -f 5 | sort);
do echo "IP: "$ip; echo " ";
for port in $(sudo nmap -sV $ip | grep open);
do echo -e "\t"$port
done
done
Pido disculpas por mi evidente falta de conocimientos pero no he logrado encontrar nada que me ayudara respecto a esto.
¡Muchas gracias por vuestra atención!