Secara default, Windows mengasosiasikan .js
file dengan Windows Script Host , mesin runtime JS mandiri Microsoft. Jika Anda mengetik script.js pada prompt perintah (atau mengklik dua kali .js
file di Explorer), skrip akan dijalankan oleh wscript.exe
.
Ini mungkin memecahkan masalah lokal dengan pengaturan global , tetapi Anda dapat mengasosiasikan .js
file dengan node.exe
sebagai gantinya, sehingga mengetik script.js pada prompt perintah atau mengklik dua kali / menyeret item ke skrip akan meluncurkannya dengan Node.
Tentu saja, jika — seperti saya — Anda telah mengaitkan .js
file dengan editor sehingga mengklik dua kali file tersebut membuka editor teks favorit Anda, saran ini tidak akan banyak membantu. Anda juga dapat menambahkan entri menu klik kanan dari "Execute with Node" ke .js
file, meskipun alternatif ini tidak menyelesaikan kebutuhan baris perintah Anda.
Solusi paling sederhana mungkin dengan hanya menggunakan file batch - Anda tidak perlu memiliki salinan Node di folder tempat skrip Anda berada. Cukup referensikan Node yang dapat dieksekusi sepenuhnya:
"C:\Program Files (x86)\nodejs\node.exe" app.js %*
Alternatif lain adalah aplikasi C # yang sangat sederhana ini yang akan memulai Node menggunakan nama filenya sendiri + .js
sebagai skrip untuk dijalankan, dan meneruskan argumen baris perintah apa pun.
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);
}
}
Jadi jika Anda memberi nama EXE yang dihasilkan "app.exe", Anda dapat mengetik app arg1 ...
dan Node akan dimulai dengan baris perintah "app.js" arg1 ...
. Perhatikan aplikasi bootstrapper C # akan segera keluar, meninggalkan Node yang bertanggung jawab atas jendela konsol.
Karena ini mungkin minat yang relatif luas, saya melanjutkan dan membuatnya tersedia di GitHub , termasuk exe yang dikompilasi jika masuk ke van dengan orang asing adalah hal Anda.