Задача: заменить текст в буфере, удалив попутно пробелы.
Строка, находящаяся в буфере - "111.111.111.111 - 111.111.111.222". Команда в действиях:
echo "iptables -A INPUT -m iprange --src-range "%s" -j DROP"
Получается так:
iptables -A INPUT -m iprange --src-range 111.111.111.111 - 111.111.111.222 -j DROP
Требуется, чтобы в итоге получилось:
iptables -A INPUT -m iprange --src-range 111.111.111.111-111.111.111.222 -j DROP
То есть, диапазон без пробелов.
Этот вариант не прокатывает:
echo "iptables -A INPUT -m iprange --src-range "${%s// /}" -j DROP"
Кто-нить умеет такие фокусы?
Ну как-то так может?
echo "111.111.111.111 - 111.111.111.222" | sed 's/ //g'
Ага, примерно так и победил.
echo "iptables -A INPUT -m iprange --src-range "%s" -j DROP" | sed 's/ - /-/g'
Теперь ещё проще запишу:
echo "iptables -A INPUT -m iprange --src-range "%s" -j DROP" | sed 's/ //g'
Спасибо за совет.
Отправить комментарий