linux – 如何在另一个文件中查找IP地址列表

我被赋予了一个任务,看看我们是否在宣传一个ip地址列表(3000).手动执行并不是一个好主意,所以我复制了我们在文件中广告的所有IP地址.现在我只需要创建一个bash脚本并将ip地址列表提供给脚本,这样它就可以找到文件中的ip地址,并显示正在公布的ip地址列表.如果找到则将其保存在一个文件中,如果不在另一个文件中.这就是我到目前为止所拥有的.这个脚本的问题是我必须手动输入每个ip地址.我如何通过知识产权地址列表提供的文件将被列入我们广告的IP地址列表的文件中.非常感谢您的进步.

 #!/bin/bash

while true; do
  echo -e "IP address: \c"
  read ip

  if grep --color "$ip" "ips"; then
    echo $ip "was found"
    echo $ip >> found
  else
    echo $ip "was NOT found"
    echo $ip >> notFound

  fi

done

解决方法:

一个更好的脚本:

while read ip  
do  
    grep "$ip"  "$ips" > /dev/null 2>&1 && echo "$ip" >> ip.found || echo "$ip" >> ip.notfound  
done    

将脚本命名为“searchip.sh”
假设您的输入文件是“iplist”,设置变量并调用如下:

ips=ips
cat iplist | sh searchip.sh

要么

sh searchip.sh < iplist  

然后你得到两个文件,一个是ip found,另一个是ip not found.
你需要的是shell I / O重定向.

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...