命令需求:

查看X.X.X.X/22网段所有开启5900端口的服务器,并以IP/host分行列出

nmap -p 5900 XX.XX.XX.XX/22 |sed -e '/Host is up/d' -e '/STATE/d' -e'/^$/d' |awk '{print $2,$5,$6}' |sed -n '/^open/{g;1!p;};h'|sed -e's/scan//g'>file

#nmap -p用于扫描开启5900的端口|得出的结果分别删除有“Host is up”符号的一横行,删除有"STATE"字符的行,删除“^$代表空行”|再得出的结果打印第2/5/6(默认以空格为分隔符)竖行|得出的结果,这个是重点,打印含有“open”开头的一行的上一行( {g;1!p;};h 就代表上一行參數)|得出的结果替换“scan”字符 >输出的结果就是只列出 “IP/host”