Tag: shell

如何列出在脚本中分离的进程?

我有: $ cat ./test #!/bin/bash gulp dev & 然后运行它: $ ./test … (..命中input以获得命令提示符)脚本中的命令启动node进程。 但我没有在后台进程中: $ jobs -p 打印空的列表。 所以我们的目标是能够在单个脚本中列出/终止(多个)启动和分离的进程。 如何?

Node.js SyntaxError:意外的input结束

我在shell脚本中写了一个函数: function nodee() { node -e "console.log((function() { $@ })());" } export -f nodee 并像这样调用它: nodee "var a = 1, b = 2;" "return a + b;" 然后我得到一个错误: [eval]:1 console.log((function() { var a = 1, b = 2; SyntaxError: Unexpected end of input at Object.<anonymous> ([eval]-wrapper:6:22) at Module._compile (module.js:456:26) at evalScript (node.js:532:25) at startup (node.js:80:7) […]

Nodejs ssh2只运行多个命令一个terminal

编码我的项目ssh2模块时,我遇到了麻烦。 我试图在一个terminal上运行多个命令来判定远程Linux系统。 例如“bc”命令为您提供了一个基本的计算器,您可以运行它进行基本操作。 但是当你使用的时候,这种进程需要被唤醒(它会接受两个或更多的input,并且会给出响应)。 我需要创build一个像websocket和ssh一样的系统。 当一个websocket收到一个命令时,ssh节点需要执行这个消息,Module需要通过websocket.send()发送它的响应, 我正在使用Node.js websocket,ssh2客户端。 在这里我的代码: #!/usr/bin/node var Connection = require('ssh2'); var conn = new Connection(); var command=""; var http = require('http'); var WebSocketServer = require('websocket').server; var firstcom=true; conn.on('ready', function() { console.log('Connection :: ready'); // conn.shell(onShell); }); var onShell = function(err, stream) { // stream.write(command+'\n'); stream.on('data', function(data) { console.log('STDOUT: ' + data); […]

有没有办法使用Grunt.js在Windows上的git shell中调用命令

有没有办法在Windows上使用Grunt.js调用Cygwin或git shell而不是CMD? 我试图构build一个自动部署系统,但CMD中的ssh命令不使用我的RSA密钥与SSH。 目前我正在使用grunt-shell插件,并且它在Mac上工作的很好。 但是由于Window的怪癖,它并没有做我想做的事情。 任何帮助,将不胜感激。

在NodeJS中pipe理两个命令

我需要将一个CLI转换为nodejs中的“spawn”语法,而我陷入了一丝混乱,无法从文档中找出如何处理它。 语法是这样的: somecommand -a op1 -b op2 | othercommand -c op1 -d op2 “其他命令”应该从“somecommand”输出“live”。 我想监视“othercommand”的输出。 谢谢,Tal。

使用NodeJS提供的shell

一旦你安装了NodeJS,你的计算机上就会有一个名为NodeJS的可执行文件,它是一个shell。 我想知道我能做些什么…在这里,你可以运行JS代码,例如,在浏览器的控制台,很好。 现在,是否有可能需要该env中的模块 ? 这样做,我将能够使用这些模块提供的function来运行一些JS代码,这些模块是IMO真的非常棒。 我试着用-g选项安装模块(例如npm install -g express ); 然后(在那个shell里)我想运行require('express')但是它没有工作,它说: Error: Cannot find module 'express' at Function.Module._resolveFileName … 想法?

用node.js执行一个shell程序并传递参数

我想执行一个需要Node.js的任何params的shell程序 我怎样才能做到这一点 ?

从node.js调用shell脚本

我怎样才能在Node.js中生成一个脚本和pipe道到壳? 例如我可以创build这个文件,例如hello.R ,使其可执行chmod +x hello.R并从命令行运行./hello.R : #!/usr/bin/Rscript hello <- function( name ) { return (sprintf( "Hello, %s", name ); }) cat(hello("World")); 我想要做的是做Node的等价物。 特别是在内存中生成一个更复杂的R脚本(例如,使用模板等string),执行它(使用exec或spawn ?),并读取stdout 。 但我不能完全弄清楚如何pipe脚本R.我尝试了(除其他外): var rscript = [ hello <- function( name ) { return (sprintf( "Hello, %s", name ); }) cat(hello("World")); ].join('\n'); var exec = require('child_process').exec; exec(rscript, { shell: '/usr/bin/R'}, function(err, stdout, […]

将命令行参数或标志传递给NPM package.json脚本

我期待着去做这样的事情: 的package.json … "scripts":{ "debug_mocha_test":"node-debug ./node_modules/mocha/bin/_mocha –grep ${names}" } … 所以然后在命令行,我可以运行如下所示: npm run debug_mocha_test –names 'test1' pipe他呢 有谁知道如何做到这一点,还是有没有比这更好的方法? 对于某些上下文,摩卡testing库有一个–grep函数,如下所示: http://mochajs.org/

Nodejs setsid()等效

我试图在nodejs中执行一个bash shell – 除了作业控制,我还在工作。 我很确定这是因为产生的进程没有被设置给进程负责人。 在C中,我可以通过调用setsid()来做到这一点。 在nodejs中,我读了相当于在产生新进程时设置选项'setsid:true'。 我这样做是这样的: var child = spawn('/bin/bash', ['–login'], {stdio: [this.slave, this.slave, this.slave], env: {"TERM": "vt100"}, setsid: true}); 但是我仍然收到“在这个shell中没有作业控制”的消息。 示例输出,分配pty ttys002后: bash: no job control in this shell Amandas-MacBook-Pro:puffshell amanda$ tty /dev/ttys002 Amandas-MacBook-Pro:puffshell amanda$ Amandas-MacBook-Pro:puffshell amanda$ ps PID TTY TIME CMD 2055 ttys000 0:00.05 -bash 2158 ttys000 0:00.01 /bin/bash 2170 ttys000 […]