Спасибо всем ответившим!
Я криворукий кривошей!!
Глянув свой код, я убедился, что перед bin стоит слэш, иначе ошибка выглядела бы так:
bin/grep: not found
Сюда я, видимо вручную код постил, поэтому слэш мог пропустить и пробел лишний убрать.. Из-за чего ввел Вас в заблуждение.
Всё оказалось банальнее, лишний пробел после оператора "=": BAD_URL=
_`/bin/grep -v "#" /etc/myscript/badurl`
Все-таки, синтаксис и правила написания скриптов мне еще незнакомы и я не знал, что нельзя ставить знаки табуляции и пробелы в строке кода.
После правки этой строки
BAD_URL=`grep -v "#" /etc/myscript/badurl`
без пробелов заработал код с подстановкой строки
iptables -I INPUT 1 -m string --string "$i" --algo kmp --to 65535 -j DROP;
censor, отдельное спасибо, буду разбираться с вашим кодом. Сейчас ipatbles ругается на неверный аргумент --algo.