Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/477.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用Node.js执行简单的Unix终端命令_Javascript_Node.js_Unix_Terminal_Command - Fatal编程技术网

Javascript 使用Node.js执行简单的Unix终端命令

Javascript 使用Node.js执行简单的Unix终端命令,javascript,node.js,unix,terminal,command,Javascript,Node.js,Unix,Terminal,Command,我试图通过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); i

我试图通过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);
        }
   });

第一:尝试从控制台获取输入数据 第二:尝试在节点代码中执行它 第三:尝试获取结果并在控制台中显示


所有这些步骤,你都可以从谷歌或nodejs的文档中得到答案。如果你找不到答案,试着在npm中搜索它。

好吧,我正在使用命令abstrations来做类似的事情。。实际上,您可以在您的终端中使用类似的
cd
,其中包括:

如何使用
cd

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

好的是,它是对命令的抽象,因此它可以在任何操作系统上工作

第一步可以尝试使用readline(lib),第二步可以像以前一样使用child_进程。像“cd”这样的东西不是命令,而是shell的功能,例如bash。如上所述运行的每个命令都作为自己的进程在自己的环境中运行,因此,如果您试图模拟shell,则必须自己构建该状态跟踪。