INNER CODE UNIT · Shell
IFS
chaifeng/ufw-docker · print-ip6tables.sh:62
while IFS= read -r line; do
if [[ "$line" =~ ^\*(.*) ]]; then
current_table="${BASH_REMATCH[1]}"
table_base_chains["$current_table"]=""
elif [[ -n "$current_table" ]]; then
if [[ "$line" =~ ^:([A-Za-z0-9_-]+)[[:space:]](ACCEPT|DROP|RETURN) ]]; then
local chain_name="${BASH_REMATCH[1]}"
table_base_chains["$current_table"]+="$chain_name "
fi
if [[ "$line" =~ ^-A[[:space:]]+([A-Za-z0-9_-]+) ]]; then
local chain_name="${BASH_REMATCH[1]}"
all_rules["$current_table,$chain_name"]+="$line"$'\n'
fi
fi
done < <(ip6tables-save 2>/dev/null)
}
# Highlight and print a single rule