optimize online minificar jsmin compressor javascript batch-file yui

javascript - minificar - optimize js online



¿Cómo automatizar la compresión de archivos JavaScript con YUI Compressor? (6)

YUI Compressor no acepta parámetros de comodines, por lo que no puedo ejecutarlo así:

C:>java -jar yuicompressor.jar *.js

Pero tengo más de 500 archivos y preferiría no tener que crear un archivo por lotes como este:

C:>java -jar yuicompressor.jar file1.js -o deploy/file1.js C:>java -jar yuicompressor.jar file2.js -o deploy/file2.js ... C:>java -jar yuicompressor.jar file500.js -o deploy/file500.js

Y, por supuesto, mis nombres de archivo no son tan uniformes.

¿Hay forma de automatizar esto sin escribir ningún código? :)


Debo mencionar que usando GNU Make, tengo la siguiente regla:

%-min.js: %.js ${java} -jar ${compressor} $< -o ${<:.js=-min.js}


Podría buscar un archivo MAKE (creo que probablemente sería más fácil de mantener a largo plazo), pero si quieres un comando batch de Windows rápido y sucio, algo como lo siguiente debería funcionar:

for %%a in (*.js) do @java -jar yuicompressor.jar "%%a" -o "deploy/%%a"



Tendrá que utilizar algún tipo de script para obtener una lista de todos los archivos .js y luego ejecutar el compresor YUI en todos ellos. En el símbolo del sistema de Windows, algo como esto debería funcionar:

FOR %f IN (*.js) DO java -jar yuicompressor.jar %f -o deploy/%f


Y para Unix o Cygwin puedes usar xargs o algo así como:

ls -1 * .js | awk ''{printf ("java -jar yuicompressor.jar% s -o deploy /% s", $ 1, $ 1)}''

Transfiera eso a / bin / sh cuando esté satisfecho con la línea de comando para ejecutarlo.


El compresor YUI ahora admite comodines, comenzando desde la versión 2.4.4. Puede obtener la última versión aquí o desde YUI Git Hub .