Hello I am looking to try and send commands to a program through node js. I am using child processes to exec the jar file. I have trouble sending the commands however
const exec = require('child_process').exec;
exec('java -jar C:\\Users\\19144\\Desktop\\all\\amp1\\Ampera1.jar -full', (e, stdout, stderr) => {
if (e instanceof Error) {
console.error(e);
throw e;
}
console.log('stdout ', stdout);
console.log('stderr ', stderr);
});
This is the child process being spawn and I wish to send the following command to the jar
'sendTransaction 12500000skms5OGjlKm5NJ7fyftdxkma9kUFR3ZxUO4EFw==GgpH9KkC 100 Ampera'
is there any way to feasible do this
12500000skms5OGjlKm5NJ7fyftdxkma9kUFR3ZxUO4EFw==GgpH9KkC
and
100
are variables
Related
Hello I have got a jar file lavalink to be exact which is basically a music module now i would like to start the jar file from my index.js(Main bot file) as I am not in the financial state to pay for a separate host for the lavalink server and would like to start and use the lavalink server in the same hosting container
No I am not running it in a browser I am using discord.js wrapper to interact with the discord API to make a backend program
Installation
Install child process npm i child-process this allows you to execute shell comands
Command
give the exec function as first parameter your command
exec("cd ~/<path-to-directory-jarFile> && java -jar Myjar_file.jar
cd ~/<path-to-directory-jarFile> goes in the directory where your jar file is
java -jar Myjar_file.jar executes your jar file
the && executes your commands consecutevely first the one before then the one after
Example
const { exec } = require("child_process");
exec("cd ~/<path-to-directory-jarFile> && java -jar Myjar_file.jar ", (error, stdout, stderr) => {
if (error) {
console.log(`error: ${error.message}`);
return;
}
if (stderr) {
console.log(`stderr: ${stderr}`);
return;
}
console.log(`stdout: ${stdout}`);
});
Executing Shell Commands in NodeJS:
https://stackabuse.com/executing-shell-commands-with-node-js/
I have an application which needs to run with the following command:
be-engine.exe -u producer -c D:\Workspace\V114_new\KinesisChannel\kinesis.cdd D:\Workspace\V114_new\KinesisChannel.ear -n logs002
Here i need to navigate to the bin director of the installed application and the run the be-engine.exe passing other file paths as well in the command on windows.
I want to automate this using protractor so that on start the above commands run automatically and engine gets started.
Is there a way to do this in protractor using javascript.
NodeJS has exec method for this:
const { exec } = require('child_process');
exec('be-engine.exe -u producer -c D:\Workspace\V114_new\KinesisChannel\kinesis.cdd D:\Workspace\V114_new\KinesisChannel.ear -n logs002', (error, stdout, stderr) => {
if (error) {
console.error(`exec error: ${error}`);
return;
}
console.log(`stdout: ${stdout}`);
console.error(`stderr: ${stderr}`);
});
https://nodejs.org/api/child_process.html#child_process_child_process_exec_command_options_callback
Check also this answer: Execute a command line binary with Node.js
Is where a way to use python api in node js?
I want use this api - https://github.com/billy-yoyo/RainbowSixSiege-Python-API for my node js app.
Have you tried running it as terminal commands using:
const {exec} = require('child_process');
exec(scriptToRun, (err, stdout, stderr) => {
if (err) {
// node couldn't execute the command
return;
}
I'm trying to use the Atom electron to write a Desktop App for both Mac and Windows.
What I need here is :
A button.
And when the user click the button it runs the following shell (or python script):
ping x.x.x.x
And the result will be displayed in a TextArea.
I tried to use [shelljs] and [yargs] but it seems like it is not workable with Atom electron.
All I want is to use JAVASCRIPT to write Desktop App (with GUI of course) that calls some script (shell && python) to do some automation work.
Any suggestion will be appreciated, thanks :)
It can be done directly with Node, you can use the child_process module. Please notice this is asynchronous.
const exec = require('child_process').exec;
function execute(command, callback) {
exec(command, (error, stdout, stderr) => {
callback(stdout);
});
};
// call the function
execute('ping -c 4 0.0.0.0', (output) => {
console.log(output);
});
I encourage you to also have a look at npm, there are tons of modules that could help you to do what you want, without calling a python script.
Try node-powershell npm. You can directly execute shell script commands and display result.
var shell = require('node-powershell')
var ps = new shell()
ps.addCommand('ping -c 4 0.0.0.0')
ps.invoke()
.then(function (output) {
console.log(output)
})
.catch(function (err) {
console.log(err)
ps.dispose()
})
See: https://www.npmjs.com/package/node-powershell
you could use child_process to archive what you are trying to do by using the following code
var exec = require('child_process').exec
function Callback(err, stdout, stderr) {
if (err) {
console.log(`exec error: ${err}`);
return;
}else{
console.log(`${stdout}`);
}
}
res = exec('ping xxx.xxx.xxx', Callback);
Is there any way to run shell command from JavaScript in node-webkit?
There is a lot of similar questions, but it didn't help me.
I'm trying to build simple desktop app for listing installed tools.
I've created node module 'tools-v' which is installed globally and works when I run it in command line.
This module run several commands: npm -v, node -v, git -v etc.
I'm on Windows 7.
//var sys = require('sys');
var exec = require('child_process').exec;
//var toolsv = (process.platform === "win32" ? "tools-v.cmd" : "tools-v");
$(document).ready(function() {
//myCmd = "C:\\Users\\win7\\AppData\\Roaming\\npm\\tools-v.cmd";
//myCmd = toolsv;
myCmd = 'tools-v';
//gui.Shell.openItem('firefox',function(error, stdout, stderr) { });
//opening Firefox works.
exec(myCmd, function (error, stdout, stderr) {
//detached: true;
console.log('stdout: ' + stdout);
$('#output').append('stdout: ' + stdout)
if (error !== null) {
console.log('exec error: ' + error);
}
});
});
I'm always getting error:
""exec error: Error: spawn ENOENT""
I tried spawn instead of exec. I also tried several other commands, beside node module.
Thanks.
Actually, this code works. I just didn't built full app, I tested it trough sublime build for node-webkit. Preforming full build with grunt solved every spawn issues.