1
#!/bin/sh
BLOCKDB="/opt/ip.blocked"
IPS=$(grep -Ev "^#" $BLOCKDB)
for i in $IPS
do
sudo iptables -A INPUT -s $i -j DROP
sudo iptables -A OUTPUT -d $i -j DROP
done
我需要一个额外的语句在循环内,检查IP地址是否在iptables列表中,如果它已经在里面,然后继续循环。如何跳过for循环中的某些元素?
的检查语句应该是这样的:
iptables -L INPUT -v -n | grep $i
我怎样才能把这个在这里?
@Beck:另外,您可能希望使用'grep -q $ i'来抑制输出并检查是否存在该值。 – DarkDust 2011-04-18 08:06:48
感谢队友。它的工作:) – Somebody 2011-04-18 08:12:00
谢谢你黑暗;) – Somebody 2011-04-18 08:12:43