Ich habe im Internet und auf Stackoverflow gesucht, aber keine Antwort auf diese Frage gefunden. Wie würden Sie ein Powershell-Skript von Node.js ausführen? Das Skript befindet sich auf demselben Server wie die Node.js-Instanz.Powershell-Skript von Node.js ausführen
Antwort
Sie können nur einen untergeordneten Prozess „powershell.exe“ laichen und hören auf Fehler für Befehlsausgabe und stderr nach stdout:
var spawn = require("child_process").spawn,child;
child = spawn("powershell.exe",["c:\\temp\\helloworld.ps1"]);
child.stdout.on("data",function(data){
console.log("Powershell Data: " + data);
});
child.stderr.on("data",function(data){
console.log("Powershell Errors: " + data);
});
child.on("exit",function(){
console.log("Powershell Script finished");
});
child.stdin.end(); //end input
Neben der akzeptierte Antwort, gibt es eine Bibliothek mit dem Namen Node.JS Edge.js, mit dem verschiedene Sprachen innerhalb von Node ausgeführt werden können. Einschließlich C#, J #, .Net, SQL, Python, PowerShell und anderen CLR-Sprachen.
Bitte beachte, dass Edge.js erfordert Powershell 3.0 & funktioniert nur unter Windows (viele der anderen Funktionen funktionieren auf Mac und Linux auch).
Diese Option funktioniert für mich, wenn das Skript nicht bereits vorhanden ist, Sie aber einige Befehle dynamisch generieren, senden und mit den Ergebnissen auf dem Knoten arbeiten möchten.
var PSRunner = {
send: function(commands) {
var self = this;
var results = [];
var spawn = require("child_process").spawn;
var child = spawn("powershell.exe", ["-Command", "-"]);
child.stdout.on("data", function(data) {
self.out.push(data.toString());
});
child.stderr.on("data", function(data) {
self.err.push(data.toString());
});
commands.forEach(function(cmd){
self.out = [];
self.err = [];
child.stdin.write(cmd+ '\n');
results.push({command: cmd, output: self.out, errors: self.err});
});
child.stdin.end();
return results;
},
};
module.exports = PSRunner;
Oder Sie können einfach Node-PowerShell verwenden.
Die Node-PowerShell nutzt zwei der einfachsten, effektivsten und einfachsten Tools, die es in der heutigen Technologiewelt gibt. Auf der einen Seite, NodeJS, die eine Revolution in der Welt von Javascript gemacht, und auf der anderen Seite, PowerShell, die vor kurzem mit einer ersten Open-Source-, Cross-Plattform-Version und durch die Verbindung von ihnen kam, gibt Ihnen die Macht zu Erstellen Sie jede Lösung, die Sie gefragt wurden, egal ob Sie ein Programmierer, ein IT-Experte oder ein DevOps-Typ sind.
Willkommen bei Stack Overflow! Ein Link zu einer Lösung ist willkommen, aber stellen Sie bitte sicher, dass Ihre Antwort ohne sie nützlich ist: [Fügen Sie einen Kontext um den Link hinzu] (// meta.stackexchange.com/a/8259), damit Ihre Mitbenutzer eine Idee davon haben, was es ist und Warum ist es da? Dann zitieren Sie den relevantesten Teil der Seite, auf den Sie verlinken, falls die Zielseite nicht verfügbar ist. [Antworten, die kaum mehr als ein Link sind, können gelöscht werden.] (// stackoverflow.com/help/deleted-answers) – FelixSFD
- 1. Ausführen von Node.js in Apache?
- 2. Ausführen von .EXE in Node.JS
- 3. Winkel Ausführen von node.js Server
- 4. Mehrere Websites auf node.js ausführen
- 5. Ausführen von Node.js Datei von außerhalb des Ordners bricht Dateipfad
- 6. Ausführen von mongoimport innerhalb von Code mit Javascript/Node.js
- 7. Asynchrone Prozesse synchron ausführen | Node.js | Google Maps
- 8. Wie node.js als Nicht-Root-Benutzer ausführen?
- 9. Node.js lesen und Ausführen einer Ruby-Datei?
- 10. Ausführen von node.js Skript in casperjs oder umgekehrt
- 11. Mehrere Befehle von demselben node.js untergeordneten Prozess ausführen
- 12. Ausführen eines Befehls mit Schluck zum Starten von Node.js Server
- 13. Ausführen von Python unter Windows für Node.js-Abhängigkeiten
- 14. Den node.js-Server unter Ubuntu unter Verwendung von forever ausführen
- 15. Anforderungen zum Ausführen von Node.js auf dem Server
- 16. Ausführen von Node.js-Funktionen in AWS EC2 im Zeitplan
- 17. Fehler beim Ausführen von Shell-Skript mit bash und node.js
- 18. Node.js + Loopback: Remote-Hooks programmgesteuert ausführen
- 19. Dateibasierte Installation von Node.js
- 20. Aufruf von JavaScript-Code von node.js Code
- 21. Laden und Ausführen der externen Datei in node.js
- 22. Verwenden von node.js zum Ersetzen von Apache/nginx und Ausführen von PHP-Sicherheit
- 23. Ein Node.JS-Skript aus einem beliebigen Verzeichnis ausführen?
- 24. Wie kann ich ein node.js-Modul als Kindprozess eines node.js-Programms ausführen?
- 25. Abbrechen einer Q-Versprechen in Node.js beim Ausführen eines Rückrufs?
- 26. Einen Node.js Server und eine Datenbank auf Azure ausführen
- 27. Bereitstellen von Node.js und Node.js-Anwendung auf Raspberry Pi
- 28. Warum wird cron mein Skript node.js nicht ausführen?
- 29. Verwenden von .toLocaleString() in Node.js
- 30. Gruntjs - Ausführen mehrerer Blockieraufgaben in einer bestimmten Reihenfolge (Mongo & Node.js)
Perfekt. Vielen Dank für die Hilfe. Genau das habe ich gesucht. Einwandfrei gearbeitet. –
Ich weiß, das ist alt, aber kann die Powershell mit Admin-Berechtigungen ausgeführt werden? – Vandervidi
http://serverfault.com/a/464024/202283 – digitalextremist