speer 19 Geschrieben 15. Dezember 2017 Melden Teilen Geschrieben 15. Dezember 2017 (bearbeitet) Hallo zusammen, bau gerade ein Powershell Skript. Soweit funktioniert alles, allerdings habe ich ein Problem bei der Verwendung von Escape Characters. Mein Ziel ist es, ein Powershell Befehl in eine Textdatei zu schreiben. Folgendes Beispiel funktioniert auch: Write-Output `$text=`$roaming[`$i] | Out-File c:\temp\Skriptout.ps1 In der Ausgabedatei steht folgerichtig: $text=$roaming[$i] Mein Problem ist, um eine gewisse Dynamik zu erreichen stehen die notwendigen "Befehle" in einer Hashtable. Also: $hash = @{ `$text=`$roaming[`$i] = 1; `[String]`$UserMS=`$env:APPDATA+`"\Microsoft\`" = 2; } Wie bekomme ich den Inhalt von $hash in eine Datei? Hoffe Ihr versteht mein Problem ;) bearbeitet 15. Dezember 2017 von speer Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 15. Dezember 2017 Melden Teilen Geschrieben 15. Dezember 2017 hmmm ... ich verstehe schon nicht, warum Du ein Powershell script mittels eines Powershell scripts erstellen willst. :eek: :nene: :wink2: :schreck: Zitieren Link zu diesem Kommentar
speer 19 Geschrieben 16. Dezember 2017 Autor Melden Teilen Geschrieben 16. Dezember 2017 Ist eigentlich mehr eine spielerei... :) Es ist Teil eines Backupskripts. Das Skript speichert die gesicherten Daten und mit den Powershell Befehlen in der PS1 Datei, erzeuge ich ein generiertes Restoreskript. Somit genügt das Ausführen der Restoredatei und alle Daten landen wieder dort, wo Sie hingehören. Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 16. Dezember 2017 Melden Teilen Geschrieben 16. Dezember 2017 OK ... soweit bin ich jetzt bei Dir. Ma kukn, ob wir nicht eine bessere Idee finden, diese Aufgabe zu lösen .... Ich vermute mal, es ist nur ein geringer Teil, der in dem Restore-Script dynamisch ist, bzw. spezifisch für den jeweiligen Backup-Satz, richtig? Wie wäre es dann, wenn Du einfach ein Script baust, welches sich die nötigen "variablen" Informationen aus einer Steuerdatei holt? Das könnte eine einfache Text-Datei sein, eine INI-Datei, eine XML-Datei oder vielleicht sogar eine per Export-CLIXML erzeugte Powershell-XML-Datei. Die sind alle deutlich einfacher per PoSh erzeugen oder von einer Vorlage anpassen als direkt ein PoSh-Script zu erzeugen. Wenn Du darauf bestehst, unbedingt ein Script als Ergebnis zu haben, wäre es noch denkbar, in diesem Fall auch eine Vorlage zu benutzen. Dann kannst Du das Script quasi schon fertig bauen und fügst für die veränderlichen Teile einfach gut per Regex "fassbare" Platzhalter ein. z.B. " ###Vairable01###" .... dann kannst Du per PoSh diese Vorlage einlesen und per Regex und Replace die Variablen gegen die "Arbeitsdaten" austauschen. Was hältst Du davon? ;) :cool: :D :) Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.