Variable aus Batch in powershell -command verwenden
Hallo zusammen,
ich komme gerade mal nicht weiter und benötige Hilfe.
in einer Batch wird einer Variable ein zusammengesetzter Wert übergeben.
set Ausgabe = Hub %Ausgabe%,Gew %Ausgabe1%,Ausb %Las%
danach möchte ich die Variable Ausgabe in einem Powershell Befehl verwenden und beiße mir daran gerade die Zähne aus.
powershell -command "$content = (Get-Content -Path %Quelle%); ($content[60] = %Ausgabe%); ($content | Set-Content -Path %Quelle%)"
Die Ausgabe ist aber nie der Inhalt der Variable.
Ich habe alle möglichen Schreibweisen versucht, aber ich bekomme es nicht hin.
Über einen Hilfreichen Tipp würde ich mich sehr freuen.
ich komme gerade mal nicht weiter und benötige Hilfe.
in einer Batch wird einer Variable ein zusammengesetzter Wert übergeben.
set Ausgabe = Hub %Ausgabe%,Gew %Ausgabe1%,Ausb %Las%
danach möchte ich die Variable Ausgabe in einem Powershell Befehl verwenden und beiße mir daran gerade die Zähne aus.
powershell -command "$content = (Get-Content -Path %Quelle%); ($content[60] = %Ausgabe%); ($content | Set-Content -Path %Quelle%)"
Die Ausgabe ist aber nie der Inhalt der Variable.
Ich habe alle möglichen Schreibweisen versucht, aber ich bekomme es nicht hin.
Über einen Hilfreichen Tipp würde ich mich sehr freuen.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 3533231820
Url: https://administrator.de/forum/variable-aus-batch-in-powershell-command-verwenden-3533231820.html
Ausgedruckt am: 04.01.2025 um 23:01 Uhr
4 Kommentare
Neuester Kommentar
Servus @Tulskie, und willkommen auf Administrator.de!
Da fehlen Anführungszeichen im PS Command um den literal String, so wird das sonst nicht als String verarbeitet
Grüße Uwe
Da fehlen Anführungszeichen im PS Command um den literal String, so wird das sonst nicht als String verarbeitet
@echo off
set "quelle=D:\Pfad\datei.txt"
set "Ausgabe=Hub %Ausgabe%,Gew %Ausgabe1%,Ausb %Las%"
powershell -EP Bypass -C "$content = Get-Content -LiteralPath '%Quelle%';$content[60] = '%Ausgabe%';$content | Set-Content -LiteralPath '%Quelle%'"
Zitat von @Tulskie:
Ich habe zwar noch nicht genau verstanden was passiert, aber das schaue ich mir noch mal genauer an.
Hab bisher ja noch nichts mit Powershell zu tun gehabt.
Dann wirst du hier schlauer .Ich habe zwar noch nicht genau verstanden was passiert, aber das schaue ich mir noch mal genauer an.
Hab bisher ja noch nichts mit Powershell zu tun gehabt.
Powershell Leitfaden für Anfänger
Im Endeffekt macht der Code nichts anderes als den Inhalt deiner Datei einzulesen, Zeile 61 des Inhalts durch den Inhalt deiner Variablen zu ersetzen und das ganze wieder in die gleiche Datei zurückzuschreiben.
Grüße Uwe