¿Cómo puedo escapar de una cadena para un comando de shell en el nodo?

Ennodejs, la única forma de ejecutar comandos externos es a través de sys.exec (cmd). Me gustaría llamar a un comando externo y darle datos a través de stdin. En nodejs aún no parece haber una forma de abrir un comando y luego enviar datos (solo para ejecutar y recibir sus salidas de error estándar), por lo que parece que la única forma en que tengo que hacer esto ahora es a través de un comando de una sola cadena como:

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

La mayoría de las respuestas a preguntas como esta se han centrado en la expresión regular que no funciona para mí en nodejs (que utiliza el motor V8 Javascript de Google) o en funciones nativas de otros idiomas como Python.

Me gustaría escapar de dangerStr para que sea seguro componer una cadena ejecutiva como la de arriba. Si ayuda, dangerStr contendrá datos JSON.

Respuestas a la pregunta(5)

Su respuesta a la pregunta