当我在终端执行命令时,它会持续约5秒,但是当我使用require('child_process').exec
并超时1分钟时,它会在1分钟后返回[Error: Command failed: ] killed: true, code: null, signal: 'SIGTERM'
?
P.S。该命令生成一些文件,在这两种情况下输出都可以。
更新:此类行为的示例:
var exec = require('child_process').exec
exec('docker run --rm -i ubuntu sleep 1',
{timeout:15000},
function(){
console.log(arguments)
}
)
答案 0 :(得分:1)
如果删除-i
标记,它将正常工作。
Docker中的-i
“交互”标志导致STDIN
被打开,默认情况下exec不会喜欢它。