# Сначала получим все правила маршрутизации
rules=$(ip rule show)
# Пройдемся по каждому правилу
while IFS= read -r rule; do
# Проверим
if [[ $rule == *$1 ]]; then
# Извлечем IP-адрес из правила
ip=$(echo $rule | grep -oE '[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+')
# Извлечем lookup table из правила
table=$(echo $rule | grep -oE 'lookup [a-zA-Z0-9]+' | awk '{print $2}')
# Удалим правило
echo "Deleting rule: from $ip lookup $table"
sudo ip rule del from $ip lookup $table
fi
done <<< "$rules"
$rule == *$1*
работает, но означает включение субстроки а не окончание субстрокой
$rule == *$1
не работает. Как правильно сделать в этом случае?