首页 > 解决方案 > 我可以从程序执行交互式命令吗?

问题描述

我想从程序执行命令。

const child_process = require("child_process")

const data = parseConfigFile("/path/to/config.json")
const {command, param1, param2, args} = convert(data)

child_process.exec(
    `${command} --param1=${param1} --param2=${param2} ${args.join(" ")}`
)

如果command不是交互式命令,例如node file.js,cp a.txt b.txt或等,它可以正常工作...

但是,如果command是交互式命令,例如psql, php -a, parted, or etc...,它就不起作用。
我认为有必要将标准输入和标准输出连接到子进程。我可以从程序执行交互式命令吗?

标签: node.js

解决方案


你可以,要做到这一点,你必须拦截 stdio 和 stderr 流。


推荐阅读