Como chamar um programa que contém espaço no nome do arquivo?

Como chamar um programa que contém espaço no nome do arquivo?

Tentei executar uma linha de comando mais ou menos assim: start /max C:\Program files\foo\ba.exe -somearguments.

Mas estou com um problema, o cmd retorna uma mensagem de erro parecida com The system cannot found the C:\Program filee se eu colocar C:\Program files\foo\ba.exeaspas, ele simplesmente executa uma nova janela cmd no modo MAX e não executa o programa.

Como consertar isto?

Responder1

Todos os nomes de arquivos e caminhos que contenham espaços devem ser colocados entre aspas.

A seguir, em relação à sua pergunta, que tal indicar o caminho como:

start /max /d"C:\Program files\foo\" ba.exe -somearguments

Responder2

O erro ocorreu porque o sistema interpretou seu comando como o arquivo C:\Programe filecomo argumento do seu comando. Obviamente ele não encontra o arquivo Programe retornou este erro.

Para corrigir, basta incluir ""no caminho entre as palavras com o caractere de espaço ou no caminho inteiro:

start /max C:\"Program files"\foo\ba.exe -somearguments

ou

start /max "C:\Program files\foo\ba.exe" -somearguments

Responder3

Embora colocar o caminho entre aspas seja o mais fácil e claro de ler, você também pode usar os antigos nomes abreviados do DOS (como o DOS seguiu a nomenclatura 8.3, nomes de arquivos com mais de 8 caracteres foram truncados com ~1) para arquivos. Esses nomes não possuem espaços. Você pode ver os nomes abreviados dos arquivos com o DIR /Xcomando.

Responder4

No Win10 você pode tentar isto:

start /max C:\Program%20files\foo\ba.exe -somearguments

informação relacionada