Windows start / wait / b NÃO está funcionando

5

Apesar do que a documentação diz, não consigo iniciar / esperar para trabalhar com / b, apesar de esfaquear no escuro, tentando quase todas as combinações possíveis de entradas que posso imaginar. Meu caminho de comando não contém espaços, portanto, esse não é um problema de citação.

Isso funciona:

iniciar / aguardar <caminho para .exe> ​​<param1> <param2> ...

Isso não funciona:

start / wait / b <caminho para .exe> ​​<param1> <param2> ...

O programa que estou tentando executar é um aplicativo cli / console, portanto essa ressalva (do início / ajuda) não deve ser aplicada:

Ao executar um aplicativo GUI de 32 bits, o CMD.EXE
    não aguarda o término do aplicativo antes de retornar ao
    o prompt de comando. Esse novo comportamento NÃO ocorre se a execução
    dentro de um script de comando.
Zadan
fonte
Parece estar funcionando no Windows 7. Você poderia nos fornecer a versão do SO e o nome do aplicativo?
jon Z
@jonZ, posso reproduzir o problema em vários sistemas, por exemplo, testei o Windows 7 SP1 de 32 bits, o 2008 R2 SP1 de 64 bits e o Windows 2003 SP2 de 32 bits. O comando start ignora a opção / wait se for seguida por / b, por exemplo, o start / wait / b notepad não esperará. Você poderia testar novamente?
Harry Johnston

Respostas:

11

Isso parece ser um bug na implementação do comando start. Há uma solução simples:

start /wait /b mycommand

não funciona (o argumento / wait é ignorado) mas

start /b /wait mycommand

faz. (Observe que, neste exemplo simples, você também pode executar o mycommand diretamente, mas essa solução alternativa pode ser útil se você desejar usar opções como / low ou / i.)

Harry Johnston
fonte
Estou obtendo os mesmos resultados aqui. A espera à qual me referi anteriormente foi a pausa após a execução start /wait /b schtasks.exe.
jon Z
Perfeito! Funciona!
Andrew