script DOS .bat não transmitindo argumentos

0

Temos um problema em um PC, que parece não estar honrando argumentos em scripts .bat, ou seja, não os transmitindo para invocar scripts python. Ele funciona bem em 10 ou mais outras máquinas muito semelhantes.

Temos um script de morcego assim:

@REM Just pass all arguments directly to the python script of the same name
@%~dpn0.py %*

Neste PC, parece que os argumentos não são passados para o script python sendo invocado.

Este idioma é usado em todo o lugar em nossos espaços de criação - e não podemos descobrir por que ele falha em apenas uma máquina.

Há alguma sugestão sobre a causa ou como podemos depurar o problema?

  • SO: Windows 7 Pro, 64 bits
  • Versão do Python: 2.7.6
por Clare Macrae 24.01.2014 / 18:03

1 resposta

2

Clare fez essa pergunta em meu nome, mas desde então tenho trabalhado com o que está acontecendo. Obrigado ao JSanchez pelo ponteiro inicial para a resposta. Não era o roteiro do morcego que era o problema, e sim o python que ele chamava; Eu encontrei um trabalho em torno de onde digitando

python the_python_script.py the arguments 

já trabalhou. O que não me ocorreu foi verificar apenas digitando

the_python_script.py the arguments

na linha de comando e deixando o Windows cuidar de qual python usar para executar o script

Quando eu fiz dessa maneira, o programa manifestou o mesmo problema - sem argumentos.

Isso, por sua vez, me levou a

Então eu verifiquei o registro - minha associação foi realmente quebrada

Corrigido, e agora isso parece funcionar ... então não foi o script .bat , mas sim a associação de arquivos python.

    
por 28.01.2014 / 18:33