Domyślnie system Windows kojarzy .js
pliki z hostem skryptów systemu Windows , samodzielnym aparatem wykonawczym JS firmy Microsoft. Jeśli wpiszesz skrypt.js w wierszu polecenia (lub dwukrotnie klikniesz .js
plik w Eksploratorze), skrypt zostanie wykonany przez wscript.exe
.
Może to być rozwiązanie lokalnego problemu z ustawieniem globalnym , ale zamiast tego można skojarzyć .js
pliki z node.exe
, tak aby wpisanie script.js w wierszu poleceń lub dwukrotne kliknięcie / przeciągnięcie elementów do skryptów uruchomiło je w Node.
Oczywiście, jeśli - tak jak ja - skojarzyłeś .js
pliki z edytorem, aby ich dwukrotne kliknięcie otworzyło Twój ulubiony edytor tekstu, ta sugestia nie przyniesie wiele dobrego. Możesz także dodać do .js
plików pozycję „Wykonaj z węzłem” w menu prawym przyciskiem myszy , chociaż ta alternatywa nie zaspokaja Twoich potrzeb w wierszu poleceń.
Najprostszym rozwiązaniem jest prawdopodobnie użycie pliku wsadowego - nie musisz mieć kopii Node w folderze, w którym znajduje się twój skrypt. Po prostu odwołaj się do pliku wykonywalnego Node absolutnie:
"C:\Program Files (x86)\nodejs\node.exe" app.js %*
Inną alternatywą jest ta bardzo prosta aplikacja C #, która uruchomi Node przy użyciu własnej nazwy pliku + .js
jako skryptu do uruchomienia i przekaże wszystkie argumenty wiersza poleceń.
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);
}
}
Jeśli więc nazwiesz wynikowy plik EXE „app.exe”, możesz wpisać, app arg1 ...
a Node zostanie uruchomiony z wiersza poleceń "app.js" arg1 ...
. Zauważ, że aplikacja bootstrapper C # zostanie natychmiast zamknięta, pozostawiając Node za okno konsoli.
Ponieważ jest to prawdopodobnie stosunkowo szerokie zainteresowanie, poszedłem dalej i udostępniłem to na GitHub , w tym skompilowany plik exe, jeśli wsiadanie do samochodów dostawczych z nieznajomymi jest twoją sprawą.