我正在尝试输出iptables的bytes值。我尝试了以下几点:
sudo iptables -nvL INPUT --line-numbers我得到了以下输出:
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destination
1 316 18844 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 ctstate NEW limit: avg 60/sec burst 20
2 0 0 DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 ctstate NEW我也试过:
sudo iptables -nvL INPUT --line-numbers | grep ACCEPT但我并不是只得到bytes值。
我不知道如何从这个命令中提取bytes值(18844和0)。
我希望你能帮助我。
发布于 2022-02-26 23:26:53
看起来,bytes值是第三列,因此您可以编写:
iptables -nvL INPUT | awk '/policy/ {next} /ACCEPT/ {print $3}'考虑到上面的示例输出,这会产生:
18844那个awk脚本(/policy/ {next})中的第一个模式是跳过第一行,否则它将在ACCEPT上匹配。
https://serverfault.com/questions/1094868
复制相似问题