Ich bin derzeit auf der Suche nach einer Möglichkeit, eine Variable im Batch zu nehmen und nur den Dateinamen zu analysieren.
Zum Beispiel übergebe ich meine Batch-Datei den Parameter a -s aus einer anderen Anwendung, die anschließend auf meine Quellvariable gesetzt wird. Die Quelldateivariable enthält normalerweise Folgendes: C: \ Programme \ myapp \ Instance.1 \ Data \ filetomove.ext.
Ich nehme an, vom Ende der Variablen bis zum ersten "\" zu lesen und das Ergebnis auf einen neuen Variablen-Dateinamen zu setzen, aber ich konnte den "for / f" -Kommando nicht erfolgreich verwenden.
Jede Hilfe wäre sehr willkommen!
Update: Nur Standard XP oder Windows 2000/2003 verfügbar ... (kann nicht davon ausgehen, dass Resource Kits installiert sind).
Wenn es als Argument für das Skript eingeht, d. h.% 1,% 2 usw., können Sie nur den Dateinamen und die Erweiterung in eine Variable wie diese extrahieren:
%Vor%wobei N der Index des Arguments ist. Zum Beispiel gibt dieses Skript nur den Dateinamen des ersten Arguments zurück:
%Vor%Tags und Links batch-file filenames dos