Wie kann ich bei cmd in ein übergeordnetes Verzeichnis wechseln?

6 Antworten

Korrigiere mich bitte, aber ich habe dein Anliegen so verstanden:

Auf einem USB-Stick befindet sich in F:\Dateiensammlung\Programme\ eine Batch mit dem Namen Progamm.cmd

Auf dem gleichen USB-Stick befindet sich im Pfad F:\Neue Dateien\ ein Textdokument mit dem Namen Neues Textdokument.txt

Dein Problem ist, dass der Laufwerksbuchstabe variable ist, sich also ändert, sobald du den USB-Stick entfernst und wieder reinsteckst.

Hier der Code dafür:

@ECHO OFF && SETLOCAL ENABLEDELAYEDEXPANSION

FOR /F "tokens=1 delims=\" %%A IN ("F:\Dateiensammlung\Programme") DO (
	SET "newPath=%%A\Neue Dateien"
	CALL "!newPath!\Neues Textdokument.txt"
)    

Die For-Schleife widmet sich der Zeichenfolge F:\Dateiensammlung\Programme und speichert das erste Token, welches durch ein Backslash getrennt ist, in die Variable %%A (das wäre F:). Der Befehl SET wird ausgeführt und wir erstellen eine neue Variabel, bestehend aus %%A (welches ja F: ist) und \Neue Dateien. Dadurch ergibt sich die Kombination F:\Neue Dateien. Zu guter letzt rufen wir mit CALL die neue Variabel, kombiniert mit \Neues Textdokument.txt auf.

Ergo steht am Ende vereinfacht:

CALL "F:\Neue Dateien\Neues Textdokument.txt"

Sofern ich dich richtig verstanden habe, sollte das funktionieren; und nur für dein jetziges Anliegen!

:}

Gib doch den absoluten Pfad an.

Wenn du sagst "zwei ordner zurück springen" und du dich im Ordner C:\Dateiensammlung\Programme\ befindest, dann ist das logischerweise C:\

Ansonsten "cd.." wechselt immer genau eine Ebene nach oben.

Das ganze soll als .bat später gespeichert werden? Dann kannst du einfach "start c:\Beispielpfad\"Neues Textdokument.txt" " nutzen

PCSpezialist17 
Fragesteller
 03.01.2018, 09:44

Das Problem dabei ist nur das das ganze auf einem USB Stick gestartet wird und sich dort ja immer der Laufwerksbuchstabe ändert

0

Generell:

cd .. #einen ordner zurück

Oder du gehst gleich per cd auf den absoluten pfad

Wie schon gesagt Ich möchte das von einem UBS-Stick aus öffnen also ist der Laufwerksbuchstabe variabel.

EGitarre  03.01.2018, 09:55

Nur zum Verständnis:

Du hast am Ende ja 2 Dateien: einmal die Datei, die du öffnen möchtest und einmal die Datei, die du öffnest, also den Befehl den du als .bat speicherst.

Liegen beide Dateien auf dem gleichen Stick, oder liegt eine Datei auf dem PC?

0