Teil 1: Allgemeine Problemstellungen
Shell Scripting unter Windows
Scriptname feststellen und verwenden
Die an eine Batchdatei übergebenen Parameter werden über die Platzhalter %1
bis %9
angesprochen. Mit Hilfe des Platzhalters %0
erhalten Sie Zugriff auf den Namen des gerade ausgeführten Batches. Nehmen wir an, Sie wollen für einen Batch mit dem Namen getServiceState.bat
eine Logdatei schreiben, die den gleichen Namen trägt, aber die Erweiterung .log
besitzt. Dann können Sie die Modifizierer aus den for
-Schleifen auch hier für die Parameter verwenden, wie die nachfolgende Zeile verdeutlicht.
echo Dies ist eine Logzeile >> %~n0.log
Während %0
immer den Namen des Shell Scripts in der Form enthält, wie er auf der Kommandozeile eingegeben wurde, ist über %~f0
die vollqualifizierte Pfadangabe auslesbar. Im Beispiel oben wird mit %~n0
nur der Namensanteil ohne die Erweiterung ausgelesen. Diese Möglichkeiten haben Sie nicht nur für %0
, sondern natürlich auch für alle anderen Parameter, sofern es sich dabei um Dateien handelt.