Par défaut, Windows associe les .js
fichiers à Windows Script Host , le moteur d'exécution JS autonome de Microsoft. Si vous tapez script.js à l'invite de commandes (ou double-cliquez sur un .js
fichier dans l'Explorateur), le script est exécuté par wscript.exe
.
Cela peut résoudre un problème local avec un paramètre global , mais vous pouvez associer des .js
fichiers à la node.exe
place, de sorte que la saisie de script.js à une invite de commande ou un double-clic / glissement d'éléments sur des scripts les lancera avec Node.
Bien sûr, si, comme moi, vous avez associé des .js
fichiers à un éditeur pour que double-cliquer dessus ouvre votre éditeur de texte préféré, cette suggestion ne fera pas grand-chose. Vous pouvez également ajouter une entrée de menu contextuelle «Exécuter avec le nœud» aux .js
fichiers, bien que cette alternative ne résout pas vos besoins en ligne de commande.
La solution la plus simple est probablement d'utiliser simplement un fichier de commandes - vous n'avez pas besoin d'avoir une copie de Node dans le dossier dans lequel réside votre script. Il vous suffit de référencer l'exécutable Node de manière absolue:
"C:\Program Files (x86)\nodejs\node.exe" app.js %*
Une autre alternative est cette application C # très simple qui démarrera Node en utilisant son propre nom de fichier + .js
comme script à exécuter, et passera tous les arguments de ligne de commande.
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);
}
}
Donc, si vous nommez le fichier EXE résultant "app.exe", vous pouvez taper app arg1 ...
et Node démarrera avec la ligne de commande "app.js" arg1 ...
. Notez que l'application d'amorçage C # se fermera immédiatement, laissant Node en charge de la fenêtre de la console.
Étant donné que cela présente probablement un intérêt relativement large, je suis allé de l'avant et je l'ai rendu disponible sur GitHub , y compris l' exe compilé si vous aimez entrer dans des fourgons avec des inconnus.