相关疑难解决方法(0)

使用Node.js执行命令行二进制文件

我正在将一个CLI库从Ruby移植到Node.js.在我的代码中,我在必要时执行几个第三方二进制文件.我不确定在Node中如何最好地完成此任务.

这是Ruby中的一个示例,我将PrinceXML称为将文件转换为PDF:

cmd = system("prince -v builds/pdf/book.html -o builds/pdf/book.pdf")
Run Code Online (Sandbox Code Playgroud)

Node中的等效代码是什么?

javascript ruby command-line-interface node.js

581
推荐指数
10
解决办法
54万
查看次数

node.js shell命令执行

我仍然试图掌握如何运行linux或windows shell命令以及在node.js中捕获输出的更好点; 最终,我想做这样的事......

//pseudocode
output = run_command(cmd, args)
Run Code Online (Sandbox Code Playgroud)

重要的是output必须可用于全局范围的变量(或对象).我尝试了以下功能,但出于某种原因,我被undefined打印到控制台......

function run_cmd(cmd, args, cb) {
  var spawn = require('child_process').spawn
  var child = spawn(cmd, args);
  var me = this;
  child.stdout.on('data', function(me, data) {
    cb(me, data);
  });
}
foo = new run_cmd('dir', ['/B'], function (me, data){me.stdout=data;});
console.log(foo.stdout);  // yields "undefined" <------
Run Code Online (Sandbox Code Playgroud)

我无法理解代码在上面的位置......这个模型的一个非常简单的原型工作......

function try_this(cmd, cb) {
  var me = this;
  cb(me, cmd)
}
bar = new try_this('guacamole', function (me, cmd){me.output=cmd;})
console.log(bar.output); // yields "guacamole" <----
Run Code Online (Sandbox Code Playgroud)

有人可以帮助我理解为什么try_this()有效,而run_cmd() …

javascript shell node.js

110
推荐指数
4
解决办法
15万
查看次数

如何使用Node JS执行Windows Shell命令(Cmd.exe)

我想要

C:\>ACommandThatGetsData > save.txt
Run Code Online (Sandbox Code Playgroud)

但是,我不想在控制台中解析和保存数据,而是希望使用Node.JS执行上述命令

如何使用Node.JS执行shell命令?

cmd windows-shell node.js

15
推荐指数
2
解决办法
4万
查看次数

node.js - 同步执行命令并获得结果

我正在尝试在node.js中同步执行child_process(是的,我知道这很糟糕,我有充分的理由)并检索stdout上的任何输出,但我无法弄清楚如何...

我发现这个SO帖子:node.js同步执行系统命令,它描述了如何使用库(node-ffi)来执行命令,这很好用,但我唯一能得到的就是进程退出代码.命令执行的任何数据都直接发送到stdout - 我该如何捕获它?

> run('whoami')
username
0
Run Code Online (Sandbox Code Playgroud)

换句话说,username是对stdout的回应,结果run0.

我想太多,而弄清楚如何读取标准输出

command synchronous node.js

7
推荐指数
1
解决办法
1万
查看次数

单击按钮时执行服务器端 shell 脚本

我正在尝试执行驻留在我的服务器中的 shell 脚本。我需要在执行后获取此 shell 脚本的(字符串)结果。但是,只有当我的 ReactJS 应用程序中的某个按钮被按下时,才应该触发此脚本。

我花了相当多的时间寻找答案。到目前为止,所有答案都指向创建 Web 服务,然后让应用程序在单击按钮时调用该服务的想法。但没有一个答案指出这是如何完成的,也没有任何答案指出任何讨论这种方法的文章。(抱歉,如果这是一个基本方法,但我上个月刚刚从 Udemy 学习了 ReactJS。)

您介意创建一个简单的代码来演示“shell 脚本 Web 服务”和按钮 (onClick) 之间的通信吗?或者至少提供一个讨论这种方法的文章链接?

谢谢你的帮助。

编辑:到目前为止我尝试的是How toexecute shell command in Javascript。但评论说这在浏览器上不起作用。我想这是我需要在网络服务中编写的代码?

reactjs next.js

1
推荐指数
1
解决办法
4999
查看次数

在 node js 中运行终端命令

键入后,我正在尝试使用quickscrape编写网络爬虫程序

quickscrape \
  --url https://peerj.com/articles/384 \
  --scraper journal-scrapers/scrapers/peerj.json \
  --output peerj-384
  --outformat bibjson
Run Code Online (Sandbox Code Playgroud)

并在我的终端中点击“Enter”,库将从爬虫中生成结果并将它们放入一个文件夹中。

现在我想编写一个 javascript 程序,以便为我调用这些终端命令,但我不确定如何与 node.js 中的终端进行交互。

javascript web-crawler node.js

-2
推荐指数
1
解决办法
3988
查看次数