Per impostazione predefinita, Windows associa i .js
file a Windows Script Host , il motore di runtime JS autonomo di Microsoft. Se digiti script.js al prompt dei comandi (o fai doppio clic su un .js
file in Explorer), lo script viene eseguito dawscript.exe
.
Questo potrebbe risolvere un problema locale con un'impostazione globale , ma potresti invece associare .js
file a node.exe
, in modo che digitando script.js al prompt dei comandi o facendo doppio clic / trascinando gli elementi sugli script li con Node.
Naturalmente, se, come me, hai associato i .js
file a un editor in modo che facendo doppio clic su di essi si apra il tuo editor di testo preferito, questo suggerimento non servirà a molto. Puoi anche aggiungere una voce di menu di scelta rapida di di di "Esegui con nodo" .js
, sebbene questa alternativa non risolva le esigenze della riga di comando.
La soluzione più semplice è probabilmente quella di utilizzare solo un file batch: non è necessario avere una copia di Node nella cartella in cui risiede lo script. Fai semplicemente riferimento all'eseguibile di Node in modo assoluto:
"C:\Program Files (x86)\nodejs\node.exe" app.js %*
Un'altra alternativa è questa semplicissima app C # che avvierà Node usando il proprio nome di file + .js
come script da eseguire e passerà qualsiasi argomento della riga di comando.
class Program
{
static void Main(string[] args)
{
var info = System.Diagnostics.Process.GetCurrentProcess();
var proc = new System.Diagnostics.ProcessStartInfo(@"C:\Program Files (x86)\nodejs\node.exe", "\"" + info.ProcessName + ".js\" " + String.Join(" ", args));
proc.UseShellExecute = false;
System.Diagnostics.Process.Start(proc);
}
}
Quindi, se si chiama l'EXE risultante "app.exe", è possibile digitare app arg1 ...
e Node verrà avviato con la riga di comando "app.js" arg1 ...
. Si noti che l'app per il programma di avvio automatico C # verrà chiusa immediatamente, lasciando Node responsabile della finestra della console.
Poiché questo è probabilmente di interesse relativamente ampio, sono andato avanti e l'ho reso disponibile su GitHub , incluso l' exe compilato se entrare in furgoni con estranei è la tua passione.