Problem mit "username" abfrage in Batch Dateien
Hallo,
ich habe eine Batch-Datei erstellt in der ein Ordner auf dem Desktop erstellt werden soll. Der Batch soll auf unterschiedlichen Maschinen laufen und mit unterschiedlichen Usern, daher auch die %username% Abfrage.
Nun zum Problem, einer der User hat einen Namen mit Leerzeichen (Hans Wurst) bei der Abfrage und dem erstellen der Ordner ergibt sich dann da Problem, dass der Batch nach hans aufhort und somit natürlich nichts vernünftiges erstellt!
hier mein aktueller Code:
mkdir C:\Users\%username%\Desktop\%VAR1%-%cdate%
mkdir C:\Users\%username%\Desktop\%VAR1%-%cdate%\Parts
Danke für eure Hilfe
ich habe eine Batch-Datei erstellt in der ein Ordner auf dem Desktop erstellt werden soll. Der Batch soll auf unterschiedlichen Maschinen laufen und mit unterschiedlichen Usern, daher auch die %username% Abfrage.
Nun zum Problem, einer der User hat einen Namen mit Leerzeichen (Hans Wurst) bei der Abfrage und dem erstellen der Ordner ergibt sich dann da Problem, dass der Batch nach hans aufhort und somit natürlich nichts vernünftiges erstellt!
hier mein aktueller Code:
mkdir C:\Users\%username%\Desktop\%VAR1%-%cdate%
mkdir C:\Users\%username%\Desktop\%VAR1%-%cdate%\Parts
Danke für eure Hilfe
Please also mark the comments that contributed to the solution of the article
Content-Key: 306534
Url: https://administrator.de/contentid/306534
Printed on: May 7, 2024 at 19:05 o'clock
5 Comments
Latest comment
Dafür gibt's "Anführungszeichen" ... und das "C:\Users\%username%" würde ich gleich durch %USERPROFILE% ersetzen.
Was das deine zwei Zeilen auf das hier reduziert:
Gruß sykbird
Was das deine zwei Zeilen auf das hier reduziert:
mkdir "%USERPROFILE%\Desktop\%VAR1%-%cdate%\Parts"
Weil du die Anführungszeichen an der falschen stelle setzt deswegen!
Bei dir landen sonst die Anführungszeichen mit in der Variablen und weiter unten machst du dann nochmal welche Drum deswegen funktioniert das nicht. Wenn du es wie oben setzt werden Leerzeichen berücksichtigt und es landen keine Anführungszeichen in der Variablen.
set "VAR999=%userprofile%\Desktop\%VAR1%-%cdate%"