Warum wird mein node.js-Skript nicht ausgeführt?

Ich möchte, dass mein Server jede Minute ein Knotenskript ausführt. Das Programm funktioniert einwandfrei, wenn ich die Datei manuell ausführe ./main.js), also bin ich mir ziemlich sicher, dass es nicht das Problem ist. Aber wenn ich es cron zur Ausführung übergebe, passiert nichts.

Hier ist die Zeile aus der Cron-Datei.

*/1 * * * * /home/bryce/scripts/wudu/main.js

Und hier ist ein Beispielprotokoll:

Oct 11 15:21:01 server CROND[2564]: (root) CMD (/home/bryce/scripts/wudu/main.js)

Die ausführbare Datei:home/bryce/scripts/wudu/main.js

#!/usr/bin/env node

var program = require('commander');
var v = require('./cli/validation');
var a = require('./cli/actions');

program
  .version('0.0.1')
  .option('-u, --url', 'Register url')
  .option('-s, --selector', 'Register selector')
  .option('-p, --pagination', 'Register pagination')
  .option('-i, --index', 'Pass an index, to destroy')
  .parse(process.argv);

var args = process.argv.slice(2),
        mode = v.mode(args[0]),
        options = v.hasArgs(mode, program);

a.init(mode, options);

Eine Idee, warum ich Funkstille bekomme? Woanders sollte ich nach einem Debug suchen?

AKTUALISIEREN

Ich glaube, das Problem hat mit meinen relativen Dateipfaden zu tun, und main.js wird von außerhalb seines eigenen Verzeichnisses ausgeführt.

So jetzt habe ich platziertexe.sh in demwudu Verzeichnis. Es sieht aus wie das

#!/bin/bash

cd ${0%/*}
./main.js mail

exit

Jetzt habe ich cron so eingestellt, dass diese Datei jede Minute ausgeführt wird. Ich habe versucht, diese Datei aus anderen Ordnern auszuführen, und sie funktioniert wie erwartet. Aber cron nimmt es nicht auf.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage