Usando e dentro de um arquivo de lote, com um loop for

1

Ao fazer isso dentro de um arquivo test.bat :

for %%i in (__src\*.js) do jsmin <"%%i" >"temp\%%~ni%%~xi" "(C) Example"

Eu estava esperando ver:

D:\Temp>jsmin <"__src\background.js" >"temp\background.js" "(C) Example"

mas vejo isso em vez disso:

D:\Temp>jsmin  "(C) Example" 0<"__src\background.js" 1>"temp\background.js"

Por que esse pedido errado e < foram substituídos por 0< , > foram substituídos por 1> ?

Como obter o pedido normal? (como desejado por jsmin )

jsmin <fulljslint.js >jslint.js "(c)2002 Douglas Crockford"
    
por Basj 13.06.2018 / 01:15

1 resposta

1

Eu não posso acreditar, mas o problema era apenas a nova linha. Com este test.bat , ele não funciona corretamente (a cadeia de direitos autorais não é adicionada como jsmin deve fazê-lo, e a primeira linha do arquivo JS de saída está vazia):

for %%i in (__src\*.js) do jsmin <"%%i" >"temp\%%~ni%%~xi" "(C) Example"

Mas com esse test.bat , funciona:

for %%i in (__src\*.js) do jsmin <"%%i" >"temp\%%~ni%%~xi" "(C) Example"
+ (empty line here)
    
por 13.06.2018 / 15:37