process对象
- 一、属性
- 1、process.stdout
- 2、 process.stdin
- 二、方法
- 三、evit事件
process对象是 Node 的一个全局对象,提供当前 Node 进程的信息。(进程:程序的一次动态运行)它可以在脚本的任意位置使用,不必通过require命令加载。该对象部署了EventEmitter接口。
一、属性
process常用的属性有:
属性 | 作用 |
process.argv | 返回一个数组,成员是当前进程的所有命令行参数 |
process.env | 返回一个对象,成员为当前Shell的环境变量 |
process.installPrefix | 返回一个字符串,表示Node安装路径的前缀 |
process.pid | 返回一个数字,表示当前进程的进程号 |
process.platform | 返回一个字符串,表示当前的操作系统,比如Linux |
process.title | 返回一个字符串,默认值为node,可以自定义该值 |
process.version | 返回一个字符串,表示当前使用的 Node 版本 |
process.stdout | 属性返回一个对象,表示标准输出 |
process.stdin | 返回一个对象,表示标准输入 |
如下:
console.log('进程号',process.pid)
console.log('操作系统',process.platform)
console.log('Node版本',process.version)
console.log('所有命令行参数:',process.argv)
打印结果为:
1、process.stdout
属性返回一个对象,表示标准输出。该对象的write方法等同于console.log,可用在标准输出向用户显示内容。
如下:
process.stdout.write('Hello World')
输出结果为:
2、 process.stdin
返回一个对象,表示标准输入。
process.stdout.write('请输入数据:')
process.stdin.on('data',(data)=>{
process.stdout.write("输入的数据是:"+data.toString().trim())
process.exit(0) //结束进程
})
打印结果为:
二、方法
方法 | 作用 |
process.chdir() | 切换工作目录到指定目录 |
process.cwd() | 返回运行当前脚本的工作目录的路径 |
process.exit() | 退出当前进程 |
process.getgid() | 返回当前进程的组ID(数值) |
process.getuid() | 返回当前进程的用户ID(数值) |
process.nextTick() | 指定回调函数在当前执行栈的尾部、下一次Event Loop之前执行 |
process.on() | 监听事件 |
process.setgid() | 指定当前进程的组,可以使用数字ID,也可以使用字符串ID |
process.setuid() | 指定当前进程的用户,可以使用数字ID,也可以使用字符串ID |
三、evit事件
当前进程退出时,会触发exit事件,可以对该事件指定回调函数。
代码如下:
process.on('exit',function(){
fs.writeFileSync('/tmp/myfile','需要保存到硬盘的信息');
})