Für die Arbeit gehe ich zu Windows über, nachdem ich längere Zeit auf Linux gearbeitet habe. Ich möchte einige Skriptfähigkeiten für administrative Aufgaben in Windows bekommen. Ich bin ziemlich gut mit bash, aber die "Bibliotheken / Tools" von bash fehlen sehr, wenn es um Windows geht. Ich sehe vbscript, wsh, powershell, cmd, jscript usw. und frage mich, was ich lernen soll oder welche Kombination von Dingen. Ich lerne auch .net, also könnte es nett sein, wenn es dabei hilft, aber es ist keine Voraussetzung.
Wenn Sie .NET lernen, ist Powershell die einzige Wahl. VBScript gibt es schon viel länger, und so gibt es wahrscheinlich noch mehr Beispiele und Beispiele für VBScript. In Powershell konzentriert sich Microsoft jedoch auf das Scripting für die Zukunft. Es ist in WS2008 (R2) enthalten, es wird in Win 7 sein und es kann zu Vista oder WS2003 oder WS2008 hinzugefügt werden. Powershell ist strategisch. Ich finde es viel mächtiger als VBScript.
Auch die Community um Powershell wächst. Nur ein Beispiel: Wenn Sie zu powershell.com gehen, können Sie sich für einen "Powershell-Tipp des Tages" anmelden, der in einer E-Mail gesendet wurde.
Wie bei der .NET-Schnittstelle - Powershell kann .NET-Assemblys laden und aufrufen, sodass die beiden Dinge sehr komplementär sind.
Ich stimme den PowerShell-Empfehlungen zu. Die Entwickler im PowerShell-Team waren alte Unix-Hände, und in PowerShell gibt es eine Reihe von Unix-ähnlichen Funktionen.
Etwas wie Cygwin würde dir erlauben, bash direkt zu benutzen, aber ich würde es aus mehreren Gründen nicht empfehlen. Erstens, wenn Sie sich in einer Windows-Umgebung befinden, wäre PowerShell einfacher für jemand anderen, ohne Ihre Bash-Erfahrung zu verwalten. Zweitens wird die Windows-Administration in einer Umgebung einfacher, in der Sie einfach auf Methoden auf WMI-Objekten usw. zugreifen können.
PowerShell hat viele Vorteile einer herkömmlichen Unix-Shell, aber PowerShell hat einen großen Vorteil: Sie können Methoden für Objekte aufrufen, anstatt Text zu analysieren, wenn Sie Befehle zusammenfügen. Jeder Befehl gibt ein Objekt zurück. Siehe Vergleichen der Unix- und PowerShell-Pipelines .
Cygwin kann Ihre Unix-Skriptfähigkeiten in einer Windows-Umgebung relevant halten. Powershell scheint momentan die offizielle .Net-Skriptsprache zu sein. Riskieren Sie jedoch keine anderen Optionen. Es gibt Ironpython, IronRuby und andere . Viele der Java-Skriptsprachen wie Groovy können unter .Net über IKVM
Ich bin selbst ein paar Jahre auf Linux umgestiegen, aber ich habe kürzlich ein paar Projekte in Windows mit Perl gemacht und kann es nicht genug empfehlen. Wenn Sie Skripte schreiben und nicht einzelne Befehle, ist es eine Überlegung wert. Check out Erdbeer Perl. Sie könnten sogar eine anständige Perl-Shell finden, die unter Erdbeer-Perl läuft, in diesem Fall könnten Sie sie auch für Single-Command-Sachen verwenden. Schau dir Ссылка
anUnd denken Sie nicht, dass Perl nicht für das Scripting von Windows-Kram geeignet ist. In meinen letzten Projekten habe ich sowohl mit Outlook als auch mit Excel in Perl mit Win32 :: OLE geschrieben, und es funktioniert wie ein Zauber!
VBScript, Batch und Powershell sind die großen, die ich mir vorstellen kann. Außerdem erfahren Sie, wie WMI funktioniert und wie Sie VBScript / PowerShell aufrufen können.
Ich habe PowerShell sehr oft verwendet, es ist eine sehr einfache und leistungsfähige Skriptsprache, aber Windows 2000 wird nicht unterstützt! Und es zwingt mich, Powershell-Laufzeit auf jedem Computer im LAN zu installieren. Was IronRuby betrifft, empfehle ich BOO - nette und mächtige Sprache.
Tags und Links .net windows bash scripting powershell