【问题标题】:Executing Simple Unix Terminal Commands using Node.js使用 Node.js 执行简单的 Unix 终端命令
【发布时间】:2016-03-18 08:03:14
【问题描述】:

我正在尝试通过 Node.js 执行简单的终端命令,但到目前为止只有 'ls' 才能工作。如果我想更改目录等怎么办?有谁知道该怎么做? 这是通过 Node.js 执行“ls”命令的代码。

 var exec = require('child_process').exec;
 var cmd = 'ls';
 exec(cmd,function(error,stdout,stderr){

      console.log(stdout);
      console.log(stderr);
      if(error!=null){
            console.log(error);
        }
   });

【问题讨论】:

  • 诸如“cd”之类的东西不是命令,它们是 shell 的功能,例如重击。上面运行的每个命令都作为自己的进程在自己的环境中运行,因此如果您尝试模拟 shell,则必须自己构建状态跟踪。

标签: javascript node.js unix terminal command


【解决方案1】:

好吧,我正在使用命令 abtrations 来做这样的事情。你实际上可以在终端中使用 cd 就像这样:

https://www.npmjs.com/package/shelljs

如何使用cd

var shell = require('shelljs');
shell.cd('../');

还有一个好处,它是命令的抽象,所以它应该可以在任何操作系统上运行..

【讨论】:

    【解决方案2】:

    首先:尝试从控制台获取输入数据 第二:尝试在节点代码中执行 第三:尝试获取结果并将其显示在您的控制台中

    所有这些步骤,您都可以从 google 或 nodejs 的文档中获得答案。如果找不到答案,请尝试在 npm 中搜索。

    【讨论】:

    • 第一步你可以尝试使用readline(lib),第二步你可以像之前一样使用child_process。
    猜你喜欢
    • 1970-01-01
    • 2010-10-11
    • 2012-05-22
    • 1970-01-01
    • 2015-05-27
    • 2012-05-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-27
    相关资源
    最近更新 更多