Ich erstelle einen benutzerdefinierten Befehl und dafür muss die Batchdatei den Pfad des in der Eingabeaufforderung geöffneten Verzeichnisses kennen, in dem der Befehl ausgeführt wird. Wie erreiche ich das?
Antwort1
Um den aktuellen Pfad herauszufinden, überprüfen Sie%cd%
Hier ist ein Beispiel:
C:\>cd /d D:\temp
D:\temp>echo %cd%
D:\temp
D:\temp>
Da sich dieser Pfad ändert, können Sie ihn am Anfang der Batchdatei speichern, indem Sie Folgendes verwenden:
set startdir=%cd%
Jetzt können Sie sehen, was %startdir%
erforderlich ist, um diesen Pfad zu erhalten.
Wenn Sie den Pfad wissen möchten, in dem sich Ihre Batchdatei befindet, können Sie die Variable %0 verwenden, die den vollständigen Pfad und den Dateinamen der Batchdatei enthält, und zwar wie folgt:
set scriptdir=%~dp0