以下这些方法是同步的,意味着他会阻塞事件循环,并暂停执行代码,直到 spawned 的进程退出。 同步方法简化了任务进程,比如大为简化在应用初始化加载/处理过程。 child_process.spawnSync(command[, args][, options])- command {String} 要执行的命令
- args {Array} 参数列表
- options {Object}
- cwd {String} 子进程的当前工作目录
- input {String|Buffer} 传递给spawned 进程的值,这个值将会重写 stdio[0]
- stdio {Array} 子进程的 stdio 配置。
- env {Object} 环境变量
- uid {Number} 设置用户进程的ID。 (参见 setuid(2)。)
- gid {Number} 设置进程组的ID。 (参见 setgid(2)。)
- timeout {Number} 子进程运行最大毫秒数。 (默认: undefined)
- killSignal {String} 用来终止子进程的信号。 (默认: 'SIGTERM')
- maxBuffer {Number}
- encoding {String} stdio 输入和输出的编码方式。 (默认: 'buffer')
- 返回: {Object}
- pid {Number} 子进程的 pid
- output {Array} stdio 输出的结果数组
- stdout {Buffer|String} output[1] 的内容
- stderr {Buffer|String} output[2] 的内容
- status {Number} 子进程的退出代码
- signal {String} 用来杀死子进程的信号
- error {Error} 子进程错误或超时的错误代码
spawnSync 直到子进程关闭才会返回。超时或者收到 killSignal 信号,也不会返回,直到进程完全退出。进程处理完 SIGTERM 信号后并不会结束,直到子进程完全退出。 child_process.execFileSync(command[, args][, options])- command {String} 要执行的命令
- args {Array} 参数列表
- options {Object}
- cwd {String} 子进程的当前工作目录
- input {String|Buffer}传递给spawned 进程的值,这个值将会重写 stdio[0]
- stdio {Array}子进程的 stdio 配置。 (默认: 'pipe')
- stderr 默认情况下会输出给父进程的' stderr 除非指定了 stdio
- env {Object} 环境变量
- uid {Number} 设置用户进程的ID。 (参见 setuid(2)。)
- gid {Number} 设置进程组的ID。 (参见 setgid(2)。)
- timeout {Number} 进程运行最大毫秒数。 (默认: undefined)
- killSignal {String} 用来终止子进程的信号。 (默认: 'SIGTERM')
- maxBuffer {Number}
- encoding {String} stdio 输入和输出的编码方式。 (默认: 'buffer')
- 返回: {Buffer|String} 来自命令的 stdout
直到子进程完全退出,execFileSync 才会返回。超时或者收到 killSignal 信号,也不会返回,直到进程完全退出。进程处理完 SIGTERM 信号后并不会结束,直到子进程完全退出。 child_process.execSync(command[, options])- command {String} 要执行的命令
- options {Object}
- cwd {String} 子进程的当前工作目录
- input {String|Buffer} 传递给spawned 进程的值,这个值将会重写 stdio[0]
- stdio {Array} 子进程的 stdio 配置。 (默认: 'pipe')
- stderr 默认情况下会输出给父进程的' stderr 除非指定了 stdio
- env {Object} 环境变量
- uid {Number} 设置用户进程的ID。 (参见 setuid(2)。)
- gid {Number} 设置进程组的ID。 (参见 setgid(2)。)
- timeout {Number} 进程运行最大毫秒数。 (默认: undefined)
- killSignal {String} 用来终止子进程的信号。 (默认: 'SIGTERM')
- maxBuffer {Number}
- encoding {String} stdio 输入和输出的编码方式。 (默认: 'buffer')
- 返回: {Buffer|String} 来自命令的 stdout
直到子进程完全退出,execSync 才会返回。超时或者收到 killSignal 信号,也不会返回,直到进程完全退出。进程处理完 SIGTERM 信号后并不会结束,直到子进程完全退出。
|