1

起動時に node.js サーバーを起動しようとしています。サーバーフォルダーにいる場合は、次のように入力します。

node server.js

問題なく動作し、同じフォルダーにある python スクリプトを起動します。

しかし、そのディレクトリの外部または init スクリプトから実行すると、次のようになります。

node /home/servers/server.js

起動して呼び出しを受け取りますが、想定どおりに python スクリプトを実行していません。

誰が何が起こっているのか、どうすれば修正できるのか知っていますか? ありがとう。

4

2 に答える 2

2

を実行すると、そこにあるディレクトリではなく、ノードが呼び出さnodeれたディレクトリからのすべてのファイルシステム呼び出しが参照されるため、実行しようとしている場合は、実行中のディレクトリにある必要があります。app.jsrequire('./myfile')myfile.jsnode

さまざまなディレクトリからこの単純なスクリプトを実行して、動作を確認します (ここlsから愛情を込めてコピーして実行します)。

var sys = require('sys')
var exec = require('child_process').exec;
function puts(error, stdout, stderr) { sys.puts(stdout) }
exec("ls -la", puts);

Python の問題に関しては、呼び出し元の経験的な場所を開発し、app.jsスクリプトを見つけるときにそれを使用する必要があります。

于 2013-02-20T00:06:47.890 に答える