Skip to content

Latest commit

 

History

History
41 lines (29 loc) · 849 Bytes

2.1.5.8 execa是可以调用shell和本地外部程序的javascript封装.md

File metadata and controls

41 lines (29 loc) · 849 Bytes

execa是可以调用shell和本地外部程序的javascript封装

会启动子进程执行。支持多操作系统,包括windows。如果父进程退出,则生成的全部子进程都被杀死。

use

npm i execa --save

demo

编写index.js

execa = require("execa")
execa("echo",["hello world"]).then(result => {
    console.log(result.stdout);
    //=> 'hello world'
});
execa("grep",["hello","index.js"]).then(result => {
    console.log(result.stdout);
}).catch(err => console.log(err));

execa.shell("ls",["a","l"]).then(r=>console.log(r.stdout));

(async () => {
	const {stdout} = await execa('echo', ['你好!']);
	console.log(stdout);
	//=> 'unicorns'
})();
注意自执行函数和上一行要加分号‘;’,否则会报错。

执行

$ node index.js

参考