There might be a better way to do this, but what I have is an input file called "list.txt" of IP addresses for my Nmap scan like so:
192.168.1.1 #Router
192.168.1.120 #PC
192.168.1.52 #Phone
Then I scan with Nmap using and output to a file using:
nmap -iL list.txt >> output.txt
Additionally I have used sed to make the "output.txt" look like this:
Host: 192.168.1.1 Status: Up
Host: 192.168.1.120 Status: Down
Host: 192.168.1.52 Status: Up
I would like to include the comments from the input "list.txt" file, but cannot find a way this can be done. The ideal "output.txt" would look like this:
Host: 192.168.1.1 Status: Up #Router
Host: 192.168.1.120 Status: Down #PC
Host: 192.168.1.52 Status: Up #Phone
Is there a way to include the comments in the "list.txt" to be in the "output.txt"?
Another option is to run awk with the original file and the new output.txt file:
awk 'NR==FNR { ip[$1]=$2;next } { printf "%s\t%s\n",$0,ip[$2] }' list.txt output.txt > finaloutput.txt
Process the first (NR==FNR) and create an array called IP with the IP address (first space delimited field) as the key and the comment the value. Then when processing the second file (output.txt), print the line, plus the comment for the IP taken from the ip array.