Skip to content

コマンドラインから Node.js スクリプトを実行する

Node.js プログラムを実行する通常の方法は、グローバルに利用可能な node コマンドを実行し (Node.js をインストールしたら)、実行したいファイルの名前を渡すことです。

メインの Node.js アプリケーションファイルが app.js の場合、次のように入力して呼び出すことができます。

bash
node app.js

上記では、シェルに node でスクリプトを実行するように明示的に指示しています。 また、JavaScript ファイルに「シバン」行を埋め込むこともできます。「シバン」はファイルの最初の行であり、スクリプトの実行に使用するインタープリターを OS に指示します。 以下は JavaScript の最初の行です。

javascript
#!/usr/bin/node

上記では、インタープリターの絶対パスを明示的に指定しています。 すべてのオペレーティングシステムが bin フォルダに node を持っているわけではありませんが、すべて env を持っているはずです。 OS に envnode をパラメータとして実行するように指示できます。

javascript
#!/usr/bin/env node
// あなたの javascript コード

シバンを使用するには、ファイルに実行可能権限が必要です。

次のコマンドを実行して、app.js に実行可能権限を付与できます。

bash
chmod u+x app.js

コマンドを実行する際は、app.js ファイルが含まれるディレクトリにいることを確認してください。

ファイルパスの代わりに文字列を引数として node に渡す

文字列を引数として実行するには、-e--eval "script" を使用できます。 次の引数を JavaScript として評価します。 REPL で定義済みのモジュールもスクリプトで使用できます。 Windows で cmd.exe を使用する場合、一重引用符は二重引用符 " しか認識しないため、正しく機能しません。 Powershell または Git bash では、"' の両方を使用できます。

bash
node -e "console.log(123)"

アプリケーションを自動的に再起動する

nodejs V 16 以降では、ファイルが変更されたときにアプリケーションを自動的に再起動する組み込みオプションがあります。 これは開発目的で役立ちます。 この機能を使用するには、watch フラグを nodejs に渡す必要があります。

bash
node --watch app.js

したがって、ファイルを変更すると、アプリケーションは自動的に再起動されます。 --watch フラグのドキュメント を参照してください。