Komma im Parameter einer Batchdatei wird nicht übernommen
Hallo,
mein Problem ist die Übergabe eines Strings, der ein Komma enthält, an eine Batchdatei als Parameter ("0123456789,-*AVWC"). Der Text bis zum Komma ist innerhalb der Batchdatei verfügbar, aber das Komma und der Rest werden abgeschnitten und verworfen. Der Batch soll in einer Powershell unter W10 laufen. Nach vergeblicher 6-stündiger Suche seid Ihr meine letzte Hoffnung. Es haben weder einfache noch doppelte Hochkommata was gebracht, auch nicht der sonst mancherorts gebrauchte "\". Vielleicht kann man das Komma irgendwie escapen?
Ich sage schon mal Danke für Lösungsansätze.
mein Problem ist die Übergabe eines Strings, der ein Komma enthält, an eine Batchdatei als Parameter ("0123456789,-*AVWC"). Der Text bis zum Komma ist innerhalb der Batchdatei verfügbar, aber das Komma und der Rest werden abgeschnitten und verworfen. Der Batch soll in einer Powershell unter W10 laufen. Nach vergeblicher 6-stündiger Suche seid Ihr meine letzte Hoffnung. Es haben weder einfache noch doppelte Hochkommata was gebracht, auch nicht der sonst mancherorts gebrauchte "\". Vielleicht kann man das Komma irgendwie escapen?
Ich sage schon mal Danke für Lösungsansätze.
Please also mark the comments that contributed to the solution of the article
Content-Key: 1012213650
Url: https://administrator.de/contentid/1012213650
Printed on: April 19, 2024 at 12:04 o'clock
2 Comments
Latest comment
Moin,
wieso dann nicht gleich komplett in Powershell?!
Sei's drum. Aus Powershell heraus, musst du sicherstellen, dass die double quotes mit übergeben werden.
Dafür gibt es 3 Möglichkeiten:
Gruß Thomas
wieso dann nicht gleich komplett in Powershell?!
Sei's drum. Aus Powershell heraus, musst du sicherstellen, dass die double quotes mit übergeben werden.
Dafür gibt es 3 Möglichkeiten:
# 1: Gesamten Parameter inkl. Double-Quotes noch mal in Single Quotes setzen
# (geht nicht, falls Powershell-Variablen innerhalb aufgelöst werden müssen)
&'C:\Pfad\zur\Batch.bat' '"0123456789,-*AVWC"'
# 2: Double Quotes Escapen
&'C:\Pfad\zur\Batch.bat' `"0123456789,-*AVWC`"
# 3: Je 3 Double-Quotes verwenden
&'C:\Pfad\zur\Batch.bat' """0123456789,-*AVWC"""
Gruß Thomas