Как мне избежать строки для команды оболочки в узле?

ВnodejsЕдинственный способ выполнить внешние команды - через sys.exec (cmd). Я хотел бы вызвать внешнюю команду и передать ей данные через стандартный ввод. В nodejs пока не существует способа открыть команду и затем передать ей данные (только для выполнения и получения ее стандартных сообщений об ошибках +), так что, похоже, единственный способ сделать это прямо сейчас - с помощью одной строковой команды, такой как:

var dangerStr = "bad stuff here";
sys.exec("echo '" + dangerStr + "' | somecommand");

Большинство ответов на подобные вопросы были посвящены либо регулярному выражению, которое не работает для меня в nodejs (который использует движок JavaScript V8 от Google), либо нативным функциям из других языков, таких как Python.

Я хотел бы избежать dangerStr, чтобы было безопасно составлять строку exec, подобную приведенной выше. Если это поможет, dangerStr будет содержать данные JSON.

Ответы на вопрос(5)

Ваш ответ на вопрос