Если вы не хотите также удалять строки, например, заканчивающиеся на WLNY-10
, то вам нужно быть более конкретным, чем даже / 0 $ /
, например
sed -r '/\s0$/d' file
или, если GNU sed недоступен
sed '/[[:space:]]0$/d' file
или даже
awk '$NF!=0' file
Вот решение для новых nftables. Однако Ubuntu 17.04 может быть старым. Debian получил nftables по умолчанию только в самом последнем выпуске.
Это адаптировано из чего-то похожего в моей системе. Он не тестировался, так как (особенно строка dport
:. У меня нет этого ), но он должен работать.
#!/usr/sbin/nft -f
table ip my_table {}
flush table my_table
table ip my_table {
chain output {
type filter hook output priority 0; policy accept;
skuid "other" jump restrict_chain; #user to restrict
}
chain restrict_chain {
counter;
oifname != "lo" jump reject_chain;
tcp dport != 5500 jump reject_chain; #line not tested
accept;
}
}
Преимущество nftables состоит в том, что он проще, и может быть (этот сценарий атомарным ).
Я не имел дело с локальной сетью, как в вашем коде, так как вы не упоминаете в остальной части текста.