检查 IP 是否存在于 /etc/hosts
check IPs if they exist in /etc/hosts
我正在尝试创建一个 .sh 脚本来检查 IP/Domain 之类的 "teamspeak.com" 是否存在于 /etc/hosts 中,如果不存在,那么我想向主机添加一些内容文件。
现在我正在尝试:
if ! grep -q "teamspeak.com == teamspeak.com" /etc/hosts; then
echo "Exists"
else
echo "Add to etc host ting here" >> /etc/hosts;
fi
grep -q
如果找到任何匹配项,则以 0 退出,否则以 1 退出,因此您需要删除 !和==比较:
if grep -q "teamspeak.com" /etc/hosts; then
echo "Exists"
else
echo "Add to etc host ting here" >> /etc/hosts;
fi
请注意,它不是基于单词的搜索,因此它也可以找到 myteamspeak.com 或 teamspeak.com.us。要获取完整的主机名,您需要使用带分隔符的 cut 命令。
要添加新主机,请使用:
echo "127.0.0.1 teamspeak.com" >> /etc/hosts
我正在尝试创建一个 .sh 脚本来检查 IP/Domain 之类的 "teamspeak.com" 是否存在于 /etc/hosts 中,如果不存在,那么我想向主机添加一些内容文件。
现在我正在尝试:
if ! grep -q "teamspeak.com == teamspeak.com" /etc/hosts; then
echo "Exists"
else
echo "Add to etc host ting here" >> /etc/hosts;
fi
grep -q
如果找到任何匹配项,则以 0 退出,否则以 1 退出,因此您需要删除 !和==比较:
if grep -q "teamspeak.com" /etc/hosts; then
echo "Exists"
else
echo "Add to etc host ting here" >> /etc/hosts;
fi
请注意,它不是基于单词的搜索,因此它也可以找到 myteamspeak.com 或 teamspeak.com.us。要获取完整的主机名,您需要使用带分隔符的 cut 命令。
要添加新主机,请使用:
echo "127.0.0.1 teamspeak.com" >> /etc/hosts