child_process.exec nodejs permissions

303
16 октября 2017, 00:46

index.js

var sys = require('sys'),
    exec = require('child_process').exec;
child = exec('./folder/anotherfolder/search.js',
    function(error, stdout, stderr) {
       console.log(stdout, stderr); // Always empty
       var result = stdout;
       }
);

Исполняю такой код в экспрессе и получаю ошибку:

/bin/sh: 1: ./folder/anotherfolder/search.js: Permission denied

Файл точно находится там где нужно, права на папку и все вложенные стоят и на чтение и на запись. В чем может быть еще проблема?

Answer 1

Оно так не работает ./folder/anotherfolder/search.js не исполняемый файл. Его запускать надо так же как и текущее ваше приложение. Что-то вроде:

exec('nohup nodejs ./folder/anotherfolder/search.js'

Хотя такие вещи обычно через fork делают:

var childProcess = require('child_process');
var process = childProcess.fork(./folder/anotherfolder/search.js);
READ ALSO
Как парсить DOM средствами Python

Как парсить DOM средствами Python

Пользуясь BeautifulSoup можно парсить исходники по CurlА как можно парсить DOM сгенерированной на URL от которого парсит данные Curl

291
Выложить проект на Vue.js на веб - сервер

Выложить проект на Vue.js на веб - сервер

Здравствуйте, изучаю Vuejs

316
библиотека Rxjs

библиотека Rxjs

в чем отличие mergeMap() от flatMap()? mergeMap() нужен для слияния потока или как?

250