2017-01-08 6 views
0

Pip и sudo не на том же пути, на моей машине, так что, когда (в основном все время) мне нужно запустить обе команды, например, так:Судо и пип не на том же пути

sudo pip install xxx 

I получить:

sudo: pip: command not found

pip загрузки пакетов, но поскольку доступ отказывают в конце установки, она заканчивается неудачей.

делая pip -V (which pip возвращает ничего) я не получаю, чтобы узнать, где пип является:

pip 1.5.4 from /Library/Python/2.7/site-packages/pip-1.5.4-py2.7.egg (python 2.7) 

и делая sudo bash -c 'echo $PATH',

я получаю:

/usr/bin:~/bin:/bin:/usr/local/bin:/usr/local/sbin:/Applications/Zed.app/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/local/MacGPG2/bin 

Я попытался для ссылки на ссылки в каталогах sudo, например:

$ sudo ln -s /usr/local/bin/pip /usr/bin/pip, безрезультатно.

как положить sudo на том же path? Пожалуйста, помогите, я потерялся здесь.

+0

Возможный дубликат [Где установлен пипс при использовании get-pip.py?](http://stackoverflow.com/questions/22278138/where-is-pip-installed-to-when-using-get- pip-py) – Loaf

+0

не дубликат. 'pip' находится на моем« пути ». 'sudo pip' - нет. –

+0

дубликат: [Команда не найдена при использовании sudo] (http://stackoverflow.com/questions/12996397/command-not-found-when-using-sudo) – Omid

ответ

0

Согласно здесь: https://unix.stackexchange.com/a/83194, вы должны быть в состоянии выполнить эту команду:

sudo env 'PATH=$PATH:/usr/local/bin' pip ... 
+0

как в 'sudo 'PATH = $ PATH:/usr/local/bin' pip install xxx'? это не работает: все еще: 'sudo: pip: command not found' –

+0

Ok. Я обновил сообщение, и на этот раз я его протестировал и уверен, что он работает. –

+0

Я получаю 'env: pip: Нет такого файла или каталога'. возможно, 'pip' не находится в' usr/local/bin'? –

0

Вы пробовали просто делать sudo su и посмотреть, работает ли он?

+0

это дает мне: 'sh-3.2 #' –

+0

Да , теперь вы root. Попробуйте запустить пакет «pip install». Команда sudo - это просто команда, которая заставит вас временно root. sudo su регистрирует вас как root. – Furrowed

+0

теперь я получаю: 'sh: pip: command not found' –

0

Куда бы ни находился, он не на вашем пути, когда вы судо. Так что попробуйте это:

sudo /usr/local/bin/pip 

Если это не сработает, то говорят which pip, чтобы узнать, где живет пипсов, и действовать соответствующим образом.

+0

'sudo:/usr/local/bin/pip: command not found', и' which pip' ничего не возвращает. –

1

Похоже, пип не установлена ​​на системном уровне. Вы можете установить pip на системном уровне, запустив sudo apt-get install python-pip с терминала. После этого вы можете обновить pip, запустив sudo pip install --upgrade pip.

0

Если вы используете sudo env "PATH=$PATH" pip install xxx, вы должны быть в состоянии выполнить правый pip исполняемый файл.

0

Вы пробовали

sudo -H <your_commands> 

?

Это должно сохранить вашу пользовательскую среду.

0

После установки пипс, я сделал

sudo ln -s /usr/local/bin/pip /usr/bin/pip 

и теперь корень может использовать пип без каких-либо модификаций PATH. У меня возникли проблемы с внесением изменений в PATH в учетную запись root.