forçando o windows 7 a não abrir executáveis de script python (especificamente pip um IPython) em uma nova janela cmd pop-up

2

Significa que quando eu corro da linha de comando algo como:

Ipython

ou

pip install somelib

o Windows os executa em uma nova janela cmd em vez de na janela atual. Por isso, se houver uma mensagem de erro, normalmente não consigo vê-la, pois a janela é fechada.

Eu posso executar scripts de Python (maioria) embutidos se eu usar a versão longa como:

python pip-script.py install somelib

mas isso é muito complicado e nem todo exe da ferramenta python tem uma versão -script.py.

como isso pode ser resolvido? obrigado pela ajuda

    
por alonisser 04.12.2012 / 13:50

3 respostas

2

Eu tenho o Windows 7 Home Premium e não tenho mais esse mesmo comportamento, embora alguns deles tenham causado algumas dores de cabeça. Se você pode obter uma distribuição de python que tenha compilado .exe wrappers para o power-tools , eu tentaria fazer isso (eu nunca chamo pip.py, eu tenho um pip.exe que é executado em cmd.exe para a direita fora da caixa).

Mais notavelmente, tenha cuidado ao executar arquivos .bat que envolvam seus scripts. Os arquivos BAT farão o que você descreveu, se não estiver configurado corretamente. Em vez de usar arquivos BAT, prefiro fazer links. Então você pode definir o alvo manualmente e outras características de execução.

Se você está tendo problemas com um comando em particular, você provavelmente precisará rastrear o alvo real do seu comando e ver como ele está sendo executado. Alguns pythons envolvem módulos em .BATs, e eles podem se comportar mal se você não perceber isso.

Uma última coisa, a execução de comandos do prompt de execução NÃO É O MESMO como em execução no cmd.exe. Eu não sei as diferenças exatas, só sei que geralmente não funciona.

Editar :: Se você está no cmd.exe e digita 'python', o que acontece?

    
por 15.04.2013 / 02:01
0

Execute os comandos em um prompt de comando elevado (Iniciar / Digite "cmd" / clique com o botão direito do mouse em cmd.exe / Executar como administrador). Se eles ainda abrirem uma nova janela, é provável que isso seja o que eles precisam fazer.

    
por 05.12.2012 / 00:32
0

Resolveu isso por conta própria. Parece que o arquivo pip.exe instalado por padrão (em python27\scripts ) se comporta assim por algum motivo, também deveria ser apenas um pip-script.py wrapper (eu acho). mas copiando um arquivo pip.exe de uma pasta virtualenv scripts para a pasta principal de scripts python apenas funciona .. e pelo menos como eu poderia verificar ('pip --version) Refere-se à instalação padrão do python e não para aquele dentro do virtualenv. me faz sorrir

    
por 16.04.2013 / 12:05