Ao fazer isso dentro de um test.batarquivo:
for %%i in (__src\*.js) do jsmin <"%%i" >"temp\%%~ni%%~xi" "(C) Example"
Eu esperava ver:
D:\Temp>jsmin <"__src\background.js" >"temp\background.js" "(C) Example"
mas vejo isso:
D:\Temp>jsmin "(C) Example" 0<"__src\background.js" 1>"temp\background.js"
Por que essa ordem errada e <substituída por 0<, >substituída por 1>?
Como obter a ordem normal? (como desejado por jsmin )
jsmin <fulljslint.js >jslint.js "(c)2002 Douglas Crockford"
Sim, mas ele ainda faz jsmin falhar com ordem errada ...
—
Basj
@Basj Se você estiver ecoando, tente
—
Juice Pimp TI
for %%i in (__src\*.js) do echo jsmin ^<"%%i" ^>"temp\%%~ni%%~xi" "(C) Example"e a ordem está correta sem os dígitos prefixados. Caso contrário, você pode precisar setlocal enabledelayedexpasiondefinir os valores substituídos como variáveis e, em seguida, colocar essas variáveis nos comandos com o mesmo !varnames!tipo. Se você está apenas ecoando, foi assim que resolvi adicionando os símbolos de sinal de intercalação, mas acho que você está tentando redirecionar com o comando jsmin e não preciso fazer o teste para confirmar para você no momento.
O programa que está sendo executado não sabe onde na sequência de execução os redirecionamentos estão sendo aplicados: ele vê apenas os parâmetros. Quando o comando está ecoando, todos os redirecionamentos em um arquivo em lotes são exibidos dessa maneira.
—
AFH
@PimpJuiceIT Eu tentei com
—
Basj
for %%i in (__src\*.js) do jsmin ^<"%%i" ^>"temp\%%~ni%%~xi" "(C) Example", mas ele não funciona
0<=<e1>=>). É assim que os comandos são repetidos após a expansão.