На самом деле РЕЗУЛЬТАТ содержит то, что Вы хотите, чтобы — продемонстрировал:
echo "$RESULT"
то, Что Вы показываете, - то, от чего Вы добираетесь:
echo $RESULT
<час> , Как отмечено в комментариях, различие - то, что (1) дважды заключенная в кавычки версия переменной (echo "$RESULT"
) сохраняет внутренний интервал значения точно, поскольку это представлено в переменной — новые строки, вкладки, несколько пробелов и весь —, тогда как (2) неупомянутая версия (echo $RESULT
) заменяет каждую последовательность одного или нескольких пробелов, вкладок и новых строк с одиночным пробелом. Таким образом (1) сохраняет форму входной переменной, тогда как (2) создает потенциально очень длинную одну строку вывода со 'словами', разделенными одиночными пробелами (где 'слово' является последовательностью непробельных символов; не должно быть никакого буквенно-цифрового индикатора ни в одном из слов).
Год назад у меня было такое же требование, и я исследовал его. Но после того, как я связался с некоторыми разработчиками ядра с открытым исходным кодом, вот что я узнал -
API-интерфейсы ядра iptables не являются внешними, то есть не задокументированы. В некотором смысле API могут измениться в любой момент. Они должны использоваться только инструментом iptables. они не должны использоваться разработчиками приложений.
-satish
Почему бы просто не получить исходный код для iptables и не делать это так, как они? Поскольку это открытый исходный код ....
Обычно вам не нужно регулярно изменять правила IP-таблиц (т.е. часто во время выполнения). Поэтому вызов / sbin / iptables должен быть нормальным.
Если вы пытаетесь это сделать, то, вероятно, вам нужно посмотреть на альтернативное соответствие или целевой модуль, который содержит собственный интеллект, или использовать NFQUEUE для постановки пакетов в очередь в программа в пользовательском пространстве, которая может принимать собственное решение на основе критериев, которые могут меняться сколько угодно раз (остерегайтесь отправки слишком большого количества пакетов в пользовательское пространство, это потенциальная проблема производительности)