IFS=$'\n'; for i in `firewall-cmd --direct --get-all-rules`; do firewall-cmd --permanent --direct --remove-rule $i && firewall-cmd --reload; done
上面的命令抛出错误作为 用法:--permanent --direct --remove-rule { ipv4 | ipv6 | eb }
启用 shell 详细选项后,我注意到命令如下:
firewall-cmd --permanent --direct --remove-rule 'ipv4 filter OUTPUT 2 -o ens32 -p udp -m conntrack --ctstate NEW -j ACCEPT'
我不确定规则周围的单引号从哪里被替换以及如何摆脱它。