在实现前端工程化
的过程中,经常需要在一个js脚本中去执行其他node
/npm
或者其他shell
命令。本篇就介绍两种node
调用shell
的方法。
一、node原生模块:child_process
node原生API介绍:
child_process.exec()
: 衍生 shell 并在该 shell 中运行命令,完成后将 stdout 和 stderr 传给回调函数。child_process.execFile()
: 与 child_process.exec() 类似,不同之处在于,默认情况下,它直接衍生命令,而不先衍生 shell。child_process.fork()
: 衍生新的 Node.js 进程并使用建立的 IPC 通信通道(其允许在父子进程之间发送消息)调用指定的模块。child_process.execSync()
: child_process.exec() 的同步版本,其将阻塞 Node.js 事件循环。child_process.execFileSync()
: child_process.execFile() 的同步版本,其将阻塞 Node.js 事件循环。使用
1 | const process = require("child_process"); |
二、npm包:shelljs
- 安装
1 | npm i -D shelljs |
- 使用
1 | const shell = require('shelljs'); |
参考文档:
欢迎访问:个人博客地址
本文作者: Tiven
发布时间: 2021-10-08
最后更新: 2022-04-14
本文标题: node执行cmd或shell命令
本文链接: https://www.tiven.cn/p/a3283e55/
版权声明: 本作品采用 CC BY-NC-SA 4.0 许可协议进行许可。转载请注明出处!
发布时间: 2021-10-08
最后更新: 2022-04-14
本文标题: node执行cmd或shell命令
本文链接: https://www.tiven.cn/p/a3283e55/
版权声明: 本作品采用 CC BY-NC-SA 4.0 许可协议进行许可。转载请注明出处!