Szukałem w Internecie i na Stackoverflow, ale nie znalazłem odpowiedzi na to pytanie. W jaki sposób wykonasz skrypt Powershell z Node.js? Skrypt znajduje się na tym samym serwerze co instancja Node.js.Wykonaj skrypt Powershell od Node.js
Odpowiedz
Można tylko ikra procesu potomnego „powershell.exe” i słuchać poleceń wyjścia stdout i stderr do błędów:
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
Oprócz przyjętej odpowiedź, nie jest node.js biblioteki o nazwie Edge.js, która umożliwia wykonywanie różnych langugages z poziomu węzła. W tym C#, J #, .Net, SQL, Python, PowerShell i inne języki CLR.
Pamiętaj, że Edge.js wymaga programu PowerShell 3.0 & działa tylko w systemie Windows (wiele innych funkcji działa również na komputerach Mac i Linux).
Ta opcja działa dla mnie, gdy skrypt już nie istnieje, ale chcesz generować niektóre polecenia dynamicznie, wysyłać je i pracować z wynikami z powrotem na węźle.
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;
Lub możesz po prostu użyć Node-PowerShell.
Node-PowerShell wykorzystuje dwa najprostsze, skuteczne i łatwe narzędzia, które istnieją w dzisiejszym świecie technologii. Z jednej strony, NodeJS, który dokonał rewolucji w świecie javascript, az drugiej strony, PowerShell, który niedawno pojawił się z początkową wersją open-source, międzyplatformową, i łącząc je ze sobą, daje ci moc do stworzyć dowolne rozwiązanie, o które Cię poproszono, bez względu na to, czy jesteś programistą, informatykiem, czy facetem DevOps.
Witamy w Stack Overflow! Link do rozwiązania jest mile widziany, ale upewnij się, że twoja odpowiedź jest przydatna bez niego: [dodaj kontekst związany z linkiem] (// meta.stackexchange.com/a/8259), aby inni użytkownicy mieli pojęcie, co to jest i dlaczego tak jest, a następnie zacytuj najbardziej odpowiednią część strony, do której prowadzi link, jeśli strona docelowa jest niedostępna. [Odpowiedzi, które są niewiele więcej niż link, mogą zostać usunięte.] (// stackoverflow.com/help/deleted-answers) – FelixSFD
- 1. Wykonaj skrypt SQLite
- 2. Wykonaj skrypt w konkretnej ramce
- 3. Wykonaj kod C# przy użyciu Powershell
- 4. Powershell - Restart i kontynuuj skrypt
- 5. Angular 2 Wykonaj skrypt po renderowaniu szablonu
- 6. zainstalować Nuget poprzez skrypt PowerShell
- 7. Wykonaj skrypt Pythona na przycisku kliknij
- 8. Wykonaj skrypt php przed każdym skryptem php?
- 9. Wykonaj skrypt po reactjs renderowanie metoda zakończyła
- 10. Wykonaj skrypt SQL z wiersza poleceń
- 11. Wykonaj skrypt lokalny na zdalnym hoście Linux
- 12. Run skrypt z node.js (childProcess)
- 13. Jak uruchomić skrypt w określonym punkcie Powershell
- 14. Błąd niestandardowy PowerShell od parametrów
- 15. Zadania IT: skrypt F # kontra Powershell
- 16. Uruchom skrypt PowerShell z instalatora WiX
- 17. Jak uruchomić skrypt SQL Plus w PowerShell
- 18. Skrypt PowerShell, aby uzyskać pełny rozmiar katalogu
- 19. Jak wykonać skrypt PowerShell z SSIS
- 20. Skrypt wyszukiwania PowerShell, który ignoruje pliki binarne
- 21. Skrypt Powershell nie rozpoznaje mojej funkcji
- 22. Powershell - Znajdź użytkownika, który wywołał skrypt
- 23. Skrypt powershell do zmiany konta usługi
- 24. Aby wywołać skrypt PowerShell (example.ps1) z C#
- 25. Którą wersją .NET jest mój skrypt PowerShell?
- 26. PowerShell Skrypt nie akceptując $ (dolar) podpisać
- 27. Wyświetl dynamiczne WYKONAJ Wyjście w obrębie pl/sql Od sqlplus
- 28. skrypt node.js i możliwy wyciek pamięci
- 29. Uruchomiony skrypt Node.js, ale nie przestanie!
- 30. Wykonaj skrypt przy użyciu sysinternals PSExec z aplikacji WWW Asp.Net
Idealny. Dziękuję bardzo za pomoc. Właśnie tego szukałem. Pracował bez zarzutu. –
Wiem, że jest stary, ale czy powershell może być uruchamiany z uprawnieniami administratora? – Vandervidi
http://serverfault.com/a/464024/202283 – digitalextremist