Batch: Substitutionen bei Parametern
Wenn man einer Batch-Datei Parameter übergibt, kann man sie in der Batch mit diversen Substitutionen aufrufen. Während ein einfaches %1 den übergebenen Parameter direkt zurückliefert, würde ein %~z1 die Größe der angegebenen Datei liefern.
%* bezieht sich in der Batch-Datei immer auf alle übergebenen Paramter (also %1 %2 %3 %4 …)
In folgender Tabelle sind die verfügbaren Substitutionen aufgeführt:
%~1 | entfernt die umschließenden Anführungszeichen |
%~f1 | erweitert %1 zum vollständig qualifizierten Pfadnamen |
%~d1 | gibt nur den Laufwerksbuchstaben zurück |
%~p1 | gibt nur den Pfad zurück |
%~n1 | gibt nur den Dateinamen zurück |
%~x1 | gibt nur die Erweiterung der Datei zurück |
%~s1 | gibt den ganzen Pfad mit kurzen Namen (8.3) zurück |
%~a1 | gibt die Dateiattribute zurück |
%~t1 | gibt Datum/Zeit der Datei zurück |
%~z1 | gibt die Größe der Datei zurück |
%~$PATH:1 | durchsucht den PATH und liefert den vollständig qualifizierten Pfad des ersten passenden Treffers zurück. Sollte keine passende Datei gefunden werden, wird ein leerer String zurückgeliefert. |
Diese Modifizierer können auch miteinander kombiniert werden, so dass man das zusammengesetzte Ergebnis zurück bekommt:
%~nx1 liefert den Dateinamen und die Erweiterung zurück.