Welche Tools und Sprachen stehen für die Windows-Shell-Skripterstellung zur Verfügung?

StackOverflow https://stackoverflow.com/questions/32087

  •  09-06-2019
  •  | 
  •  

Frage

Ich möchte wissen, welche Optionen es gibt, um einige Skriptaufgaben auf der Windows-Plattform auszuführen.Ich benötige Funktionen wie Dateimanipulationen, Registrierungsbearbeitung usw.Können Dateien mit Skripttools bearbeitet werden?Welche weiteren Funktionen bieten Windows-Skripttools?Kann alles, was mit der Windows-GUI möglich ist, auch mit einer Skriptsprache erledigt werden?

War es hilfreich?

Lösung

Ich finde Windows PowerShell von Microsoft ist derzeit der Favorit für solche Dinge.

Andere Tipps

Es könnte sich lohnen, einen Blick auf die Vorabversion der Version 2.0 zu werfen.Vieles hat sich geändert:

http://blogs.msdn.com/powershell/archive/2007/11/06/what-s-new-in-ctp-of-powershell-2-0.aspx

Wie wäre es mit der Installation einer Windows-Version von? Python, Perl oder deine Lieblingssprache?Diese sollten alle Funktionen bieten, die Sie benötigen.

Batch-Dateien sind am portabelsten, aber komplizierte Dinge können schwierig (sehr schwierig) sein.

Powershell ist unglaublich – ähm – leistungsstark, aber die installierte Domäne ist derzeit nur geringfügig größer als die der Leute, die gerne Powershell und die von ihnen verwalteten Server verwenden.Wenn Sie die Maschinen kontrollieren, auf denen Sie Skripts erstellen, und die Installation von Powershell vorschreiben können, ist Powershell die richtige Wahl.Ansonsten sind Batchdateien die beste Lösung.

Mit Powershell können Sie alles tun, was möglich ist, aber einige Dinge werden schwieriger sein als andere :)

(Im Ernst, wenn Sie eine Windows-GUI-App über ein Skript steuern möchten, werden Sie große Probleme haben, es sei denn, die App unterstützt die Skripterstellung selbst oder Sie möchten damit beginnen, Nachrichten an Dialogsteuerelemente zu senden und den Dialog per Screen Scraping zu überprüfen, um ihn zu überprüfen Für den Erfolg.)

Ich würde „Take Command“ empfehlen (JPSoft), was eher „cmd.exe“ als der PowerShell ähnelt.Wir nutzen es hier bei ESSS schon seit Jahren.

Windows-Skriptsprachen

Schauen Sie auch mal vorbei Power Shell

CScript?Ich erinnere mich, dass ich so etwas gesehen habe.

Powershell ist nett, aber es ist eine zusätzliche Sache, die Sie installieren müssen.Nicht Standard in fast jeder Windows-Installation.Wenn es also nur für den eigenen Gebrauch ist, sollte Powershell in Ordnung sein.Wenn die Skripte beispielsweise als Teil einer von Ihnen erstellten Software auf den Computern der allgemeinen Bevölkerung ausgeführt werden sollen, ist dies möglicherweise nicht die beste Option.

Wenn Sie mit der Installation einer zusätzlichen Sache einverstanden sind, sollten Sie sich Cygwin ansehen.Dadurch steht Ihnen eine vollständige Linux-Bash-Befehlszeile und alle zugehörigen Tools zur Verfügung.

Wenn Sie etwas benötigen, das in einer Standard-Windows-Installation enthalten ist.Es gibt die Windows-Befehlszeile (cmd.exe).Es verfügt zwar über einige Funktionen, ist aber im Vergleich zu dem, was unter Linux verfügbar ist, sehr mangelhaft.Das andere, wahrscheinlich schlimmere Problem besteht darin, dass es nicht viel Dokumentation gibt.

Vielleicht interessieren Sie sich auch für VB Script (Flame Away).VB Script sollte auf fast jeder aktuellen Standard-Windows-Installation funktionieren und ist viel funktionaler als die Befehlszeile.

Ich habe Cygwin installiert, sodass ich Bash-Shell-Skripte für meine Automatisierungsanforderungen ausführen kann.Außerdem verwende ich eine Kombination aus Batch + JScript, wenn ich Dinge benötige, die weniger nativ unter Windows laufen (läuft auf cmdline, wenn Sie Visual Studio.Net installiert haben, rufen Sie einfach „cscript XXX.js“ auf).

Das Schreiben von Skripten ist ein Riesenspaß.

Persönlich schreibe ich gerne ein paar böse kleine Batchdateien.Sie können ein Befehlszeilenprogramm finden, mit dem Sie fast alles tun können.Ich bevorzuge Batch-Dateien vor allem, weil sie mit höchstens einer ZIP-Datei und ein paar Unix-Tools (SSED, GREP, GAWK) von einem Computer auf einen anderen portierbar sind.Es gibt eine Befehlszeilen-Registrierungsdatei REG.Exe, die sogar Registry-Änderungen und -Lesevorgänge durchführen kann.Sie können die Ausgabe von Befehlen mit einer „FOR /f“-Schleife analysieren.

PowerShell hat mehr ...irren.. Leistung (Im zweiten Beitrag habe ich das geschrieben, aber ich kann nicht anders.)

Wenn Sie sich Windows-Automatisierung ansehen möchten, schauen Sie sich das an AutoHotKey.

Was versuchen Sie zu automatisieren?Das kann uns helfen, einzugrenzen, was hilfreich wäre.

  • Josh

BEARBEITEN:Fürs Protokoll: Ich habe das gleichzeitig mit @jameso geschrieben. Wenn mir jemand bei der Arbeit nicht eine Frage gestellt hätte, hätte ich vielleicht vor ihm gepostet.Die Ähnlichkeit des Beitrags hat mich allerdings ein wenig erschaudert ...

Powershell kann tun, was Sie brauchen.

Dateimanipulationen

Das SO posten beantwortet, wie Sie eine Zeichenfolge in Ihrer Textdatei ersetzen können.Zum leichteren Nachschlagen hier einfügen:

(Get-Content c:\temp\test.txt).replace('[MYID]', 'MyValue') | Set-Content c:\temp\test.txt

Es gibt noch andere Dinge, die Sie tun können, wie zum Beispiel das Kopieren von Dateien und Ordnern.Mehr erfahren Sie auf der Windows Powershell-Dokumentation

Bearbeitung der Registrierung

Dies lässt sich ganz einfach mit Powershell bewerkstelligen.Hier ist ein Beispielcode von Microsoft-Entwicklerblogs:

Set-ItemProperty -Path HKCU:\Software\hsg -Name newproperty -Value anewvalue

Gestern hätte ich das für dich reparieren können ;)

Was sind die Tools/Sprachen für Windows -Shell -Skripten?

Würde besser lesen als

Welche Tools und Sprachen stehen für Windows -Shell -Skripten zur Verfügung?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top