tralveller
Goto Top

Powershell: Anführungszeichen in Parameter mit übergeben

Hallo zusammen,

ich erstelle mir gerade ein Powershell-Skript welches mit Parameter arbeitet und zum Beispiel einen Pfad mit Leerzeichen hat, welches ich explizit mit "-/Anführungs-Zeichen innerhalb des Parameters angeben müsste, z.B.:
"D:\Test 1\hallo.txt"

Als Befehl:
.\Test.ps1 -Argument1 "D:\Test 1\hallo.txt"

Ich habe nun schon einiges hin und her probiert, mit ', `, mehrfachen "", '" und vielen weiteren Kombinationen, komme jedoch einfach nicht auf die Lösung.
Auch das mir zugelegte Powershell 5-Handbuch "konnte mir bisher nicht helfen" face-sad

Hat jemand noch eine Idee?

Sorry, Danke und Grüße
Tralveller

Content-ID: 358303

Url: https://administrator.de/contentid/358303

Ausgedruckt am: 26.11.2024 um 02:11 Uhr

JohnDorian
JohnDorian 15.12.2017 um 08:57:38 Uhr
Goto Top
Ich hab leider keine Lösung dafür (hätte jetzt auch ' "blabla" ' vermutet), aber dass sich ein User bereits beim öffnen eines Threads für seine Frage entschuldigt, sagt einiges über die Umgangsformen aus, die in diesem Forum vorherrschen face-confused

FREUNDLICHE Grüße, JD face-wink
AndreasHoster
AndreasHoster 15.12.2017 um 08:59:11 Uhr
Goto Top
Ich kann es nicht nachvollziehen, doppelte Anführungszeichen im String funktionieren wie immer:
param([String]$Test)
Write-Host $Test
Ergebnis:
PS C:\windows\system32> D:\batches\Powershell\Test1.ps1 -test "Test"
Test

PS C:\windows\system32> D:\batches\Powershell\Test1.ps1 -test """Test"""
"Test"
134998
134998 15.12.2017 aktualisiert um 10:03:44 Uhr
Goto Top
Normally you will never need this in Powershell, also with spaces in the path. This is a common error powershell beginners face when they migrate from batch face-wink.
But if you really want, you can use
.\Test.ps1 "`"D:\Test 1\hallo.txt`""  
or
.\Test.ps1 """D:\Test 1\hallo.txt"""