принуждение windows 7 не открывать исполняемые файлы скрипта Python (в частности, pip IPython) в новом всплывающем окне cmd

958
alonisser

Это означает, что когда я запускаю из командной строки что-то вроде:

Ipython 

или же

pip install somelib 

Windows запускает их в новом окне cmd, а не в текущем окне. поэтому, если есть сообщение об ошибке, я обычно не вижу его, так как окно закрывается.

Я могу запустить (большинство) скриптов Python, если я использую длинную версию, например:

python pip-script.py install somelib 

но это очень громоздко, и не каждый exe-инструмент для Python имеет версию -script.py.

как это можно решить? Спасибо за помощь

2

3 ответа на вопрос

2
user2097818

I have Windows 7 Home Premium and I do not experience this same behavior anymore, although some of them did cause some headaches. If you can get a distribution of python that has compiled .exe wrappers for the power-tools, I would try to do this (I never call pip.py, I have a pip.exe that executes in cmd.exe right out of the box).

Most notably, take care when executing .bat files that wrap up your scripts. BAT files will do what you described if not set up properly. Instead of using BAT files, I prefer to make links. Then you can set the target manually and other execution characteristics.

If you are having trouble with a particular command, you will probably need to track down the actual target of your command, and see how it is being run. Some pythons wrap up modules in .BATs, and they can behave wrong if you don't realize this.

One last thing, running commands from the Run-Prompt IS NOT THE SAME as running from cmd.exe. I don't know the exact differences, I just know that it generally does not work.

Edit:: If you are in cmd.exe, and you type 'python', what happens?

это привело в правильном направлении, отсюда и upvote (также upvote для нового пользователя, пытающегося помочь сообществу). но здесь нет `bat` файлов, по крайней мере, не видимость для меня alonisser 11 лет назад 0
0
Karan

Запустите команды из командной строки с повышенными привилегиями (Пуск / Введите «cmd» / щелкните правой кнопкой мыши cmd.exe / Запуск от имени администратора). Если они все еще открывают новое окно, вероятно, это то, что они жестко запрограммировали.

Это не работает, но я вполне уверен, что это не является жестко запрограммированным, так как в Win XP это не так alonisser 11 лет назад 0
0
alonisser

Решил это сам. Похоже, что pip.exeфайл, установленный по умолчанию (in python27\scripts), по какой-то причине ведет себя так, также он должен быть только pip-script.pyоберткой (я думаю). но копирование pip.exeфайла из папки сценариев virtualenv в основную папку сценариев python просто работает ... и, как я мог проверить (`pip --version), это относится к установке по умолчанию на python, а не к установке внутри virtualenv. заставляет меня улыбаться

Похожие вопросы