Hallo ich möchte eine CMD erstellen.Mein Problem ist das wenn ich die Batch fertig habe und sie ausführe startet sie im System32 Modus und wenn die Batch dann den Kommand cd Downloads ausführt sagt sie das das System den Pfad nicht finden kann ich könnte natürklich auch als Pfad C:\Users\Philipp\Downloads nur das Problem ist wenn ich die Datei auf einem anderem Computer nutzen will möchte ich nicht immer diesen Pfad ändern gibt es da eine andere Möglikkeit?
Ja und nein. Denn %USERPROFILE% ist ja schon eine Variable die das berücksichtigt. Gucke mal in die Registry und suche dort nach %USERPROFILE%. Alle Verlinkungen darin sind auch ohne Anführungsstriche geschrieben.
Dazu muss man leider auch ja und nein sagen. %USERPROFILE% enthält nur den Pfad ohne "". Daher ist das, was Stefan da schreibt, schon richtig, sofern es da beim Benutzernamen Leerzeichen gibt.
Gebe einfach mal echo %USERPROFILE% ein. Die Ausgabe zeigt genau das an, was die Variable enthält und womit denn auch gearbeitet werden kann/muss.
Allerdings ist hier die cmd.exe etwas inkonsistent, was das angeht. Unter der Annahme der Benutzername lautet 'Test mit Leerzeichen' sähe das so aus:
Während cd %USERPROFILE%\Downloads tatsächlich auch ohne "" funktioniert, klappt das bei anderen Befehlen leider nicht. Bei dir %USERPROFILE%\Downloads z.b. kommt nur "Das System kann die angegebene Datei nicht finden.", währen dir "%USERPROFILE%\Downloads" wieder einwandfrei funktioniert. Daher ist man auf jeden Fall auf der sicheren Seite, wenn man mit "" arbeitet.
Ich bin kein Toilettenpapier-Hamster.
---
Ich bin ein kleiner, schnickeldischnuckeliger Tiger aus dem Schwarzwald.
Alle haben mich ganz dolle lila lieb.