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-Key: 358303

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

Printed on: April 25, 2024 at 04:04 o'clock

Member: JohnDorian
JohnDorian Dec 15, 2017 at 07:57:38 (UTC)
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
Member: AndreasHoster
AndreasHoster Dec 15, 2017 at 07:59:11 (UTC)
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"
Mitglied: 134998
134998 Dec 15, 2017 updated at 09:03:44 (UTC)
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"""