繁体   English   中英

如何使用 child_process.exec 在 NodeJS 中运行多行命令

[英]How to run multiline commands in NodeJS with child_process.exec

注意: 这个问题对我没有帮助。

我正在尝试为Atom创建一个任务运行程序,并且已经到了运行多行 shell 脚本的地步。

const child_process = require("child_process");
child_process.exec(
    `rm -rf something
         another
         directory`,
    (error, stdout, stderr) => {
        /*...*/
    },
)

导致节点认为anotherdirectory是命令。

对我有用的是

child_process.exec(
    yourCommand.replace(/\n/g, "\\\n"),
    (error, stdout, stderr) => {
        /*...*/
    }
);

这将修改所有换行符以在换行符之前有一个反斜杠。


对于 Windows,它会非常相似,但用^\n而不是\\\n替换所有新行:

child_process.exec(
    yourCommand.replace(/\n/g, "^\n"),
    (error, stdout, stderr) => {
        /*...*/
    }
);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM