# Verzeichnis der ausgeführten Batch Datei /  Windows Command Shell Scripts ermitteln



## Thomas Darimont (6. März 2012)

Hallo,

mit der Variable %~dp0 kann man den Pfad der aktuell ausgeführten Batchdatei ermitteln.
Dabei steht %0 für die Datei selbst, d steht für Laufwerk (drive) und p für den Dateipfad.

script.cmd

```
@ECHO OFF
SET SCRIPT_LOCATION=%~dp0
echo Executing Script in %SCRIPT_LOCATION%
```

Beispiel:

```
D:\temp\dir1>dir /s
 Volume in Laufwerk D: hat keine Bezeichnung.
 Volumeseriennummer: B4C5-AFE8

 Verzeichnis von D:\temp\dir1

05.03.2012  17:50    <DIR>          .
05.03.2012  17:50    <DIR>          ..
05.03.2012  17:51                80 script.cmd
05.03.2012  17:51    <DIR>          subdir1
               1 Datei(en)             80 Bytes

 Verzeichnis von D:\temp\dir1\subdir1

05.03.2012  17:51    <DIR>          .
05.03.2012  17:51    <DIR>          ..
05.03.2012  17:51                80 script.cmd
               1 Datei(en)             80 Bytes

     Anzahl der angezeigten Dateien:
               2 Datei(en)            160 Bytes
               5 Verzeichnis(se), 36.312.899.584 Bytes frei

D:\temp\dir1>script.cmd
Executing Script in D:\temp\dir1\

D:\temp\dir1>cd subdir1

D:\temp\dir1\subdir1>script.cmd
Executing Script in D:\temp\dir1\subdir1\
```

Gruß Tom


----------



## HonniCilest (6. März 2012)

Oder auch einfach

```
%~f0
```
Das f steht für den kompletten Pfad und die 0 wie Thomas bereits erwähnte für die Datei selbst.

Edit:
Nvm, hier wird auch der Name mit angezeigt.


----------

