Ich versuche, eine Batch-Datei zu erstellen, die Doug Cockfords JSMin gegen alle .js-Dateien in einem Verzeichnis ausführen wird. Hier ist, was ich habe:Verwenden von JSMin in einer Batch-Datei
for /f %%a IN ('dir /b /s *.js') do jsmin <%%a >%%~da%%~pamin\%%~na.min%%~xa
Das Problem ist, dass die spitzen Klammern (<>) bewirken, dass die Batch-Datei als 0 < und 1> interpretieren. Event läuft nur:
jsmin <scripts\script.js >jsmin-stuff.js
in einer Batch-Datei macht das gleiche. Wenn Sie die spitzen Klammern mit^verwerfen, ist jsmin der Ansicht, dass die spitzen Klammern Teil des Pfades sind.
Irgendwelche Ideen? Was mache ich falsch?
Das funktioniert, wenn ich es direkt in die Eingabeaufforderung eingibt, aber wenn es in einer Batch-Datei enthalten ist, funktioniert es nicht. Rekursion und die For-Schleife sind nicht das Problem. Fehler beim Ausführen der folgenden Zeile aus einer Batchdatei: jsmin jsmin-stuff.js Warum schlägt es fehl? Wie kann es geändert werden, damit es nicht scheitert? –
mikefrey
Übrigens habe ich keine Rekursionsprobleme mit meiner ursprünglichen for-Schleife, da 'dir/b/s * .js' zuerst eine Liste mit Dateien erhält ... und dann neue Dateien erstellt. – mikefrey