1.process.exit()
按照linux的规范,一般成功用0表示,而非0则表示失败。那么process.exit也遵循这个规范
process.exit(0)表示成功完成,回调函数中,err将为null;
process.exit(非0)表示执行失败,回调函数中,err不为null,err.code就是我们传给exit的数字。
//work.js module.exports = function() { process.exit(0); } require("./work")(); //不会打印 console.log("hello world!");
2.process.cwd
进程的工作目录
3.process.nextTick()
推荐https://www.cnblogs.com/jasonxuli/p/6074231.html
4.process.argv
命令行参数可以通过process.argv[2]来获取,process.argv[0]一般是node,argv[1]为文件名。
5.child_process
该模块新建子进程,例如:
function exec (cmd) { //npm --version return require('child_process').execSync(cmd).toString().trim() }
var cluster = require('cluster'); cluster.setupMaster({ exec:"auto.js" }); cluster.schedulingPolicy = cluster.SCHED_RR; //子进程调度策略,默认SCHED_RR,循环计数策略,在调用setupMaster或者子进程产生时生效。 console.log("schedulingPolicy is",cluster.SCHED_RR); var cpus = require('os').cpus(); console.log("cpus is",cpus.length); for(var i = 0; i < cpus.length; i++){ console.log("##",i); cluster.fork(); }
6. process.env.npm_lifecycle_event
process.env //属性返回一个包含用户环境信息的对象。
var currentTarget = process.env.npm_lifecycle_event; //在cli环境下运行 npm run build console.log(currentTarget); //build
在webpack的配置文件可能会用到,linux中给process.env设置值很简单,只需要设置环境变量即可,如:
export NODE_ENV = "production"; console.log(process.env.NODE_ENV); //production
7. nodejs部署
pm2 部署:
https://blog.csdn.net/qq_17475155/article/details/53823862
https://www.cnblogs.com/jaxu/p/5193643.html
8.spawn
spawn - child_process.spawn
使用指定的命令行参数创建新进程。spawn 会返回一个带有stdout和stderr流的对象。你可以通过stdout流来读取子进程返回给Node.js的数据。stdout拥有’data’,’end’以及一般流所具有的事件。当你想要子进程返回大量数据给Node时,比如说图像处理,读取二进制数据等等,你最好使用spawn方法。