javascript - node.js 中的 process.exec()

标签 javascript node.js

这是我写的代码,当我执行代码时,终端没有输出任何东西,程序被阻塞了

var util=require('util')
var exec=require('child_process').exec;
exec('iostat 5',function(err,stdout,stderr){
    util.puts("hello")
    util.puts(stdout)
})

如果我像这样更改 exec 命令:它会工作并输出文件列表

var util=require('util')
var exec=require('child_process').exec;
exec('ls -al',function(err,stdout,stderr){
    util.puts("hello")
    util.puts(stdout)
})

block 命令(iostat)和非 block 命令(ls)之间有什么区别吗?

最佳答案

iostat 5 每 5 秒永远循环一次并且永远不会终止,因此永远不会调用您的 exec 回调。相反,您可以从 setInterval 调用中调用 iostat,或者如果您只需要一次,则只需删除 5

关于javascript - node.js 中的 process.exec(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10061678/

相关文章:

javascript - 更改 jQuery 弹出窗口以在页面加载时显示

javascript - 如何在同一个函数中处理不同的可选回调?

javascript - 如何在一个地方获得所有 api 响应 (33) 而不会弄得一团糟

javascript - ElectronJS。设置窗口名称或确定哪个窗口发出事件

javascript - 向 mustache/php 添加条件

node.js - import module Error 是不是一个函数?

node.js - 我可以更改 winston 中日志数据的颜色吗?

node.js - 从 Firebase Callable 函数获取用户 IP 地址

JavaScript 问题,摄氏到开尔文不工作

javascript - 如何检测 Facebook 应用程序中何时加载 DOM 和框架?