我想 grepACCEPT, DROP, REJECT
如下所示。
-P INPUT ACCEPT
-P OUTPUT DROP
-P FORWARD REJECT
我执行了
iptables -S | grep -E '\-P INPUT|\-P OUTPUT|\-P FORWARD' | awk '{print $2}'
我的输出看起来像这样
INPUT
OUTPUT
FORWARD
有人知道如何只 grep 吗ACCEPT, DROP, REJECT
?我只想在内置链中使用 grep 策略。在内置链下面我得到了用户的链不能与结果相关联。
谢谢你,米
答案1
无论如何,没有理由调用grep
if :awk
iptables -S |
awk '/^-P INPUT/ {INPUT=$3}; /^-P FORWARD/ {FORWARD=$3}; /^-P OUTPUT/ {OUTPUT=$3};
END {print INPUT; print FORWARD; print OUTPUT;}'
答案2
你很接近。如果您需要整条线:
iptables -S | grep -- "-P" | grep -E "ACCEPT|DROP|REJECT"
输出
-P INPUT ACCEPT
-P OUTPUT DROP
-P FORWARD REJECT
如果您只需要匹配的单词:
iptables -S | grep -- "-P" | grep -oE "ACCEPT|DROP|REJECT"
输出
ACCEPT
DROP
REJECT