2016-10-28 5 views
0

Я начал виртуальную среду и установленную egcurl из https://github.com/akamai-open/edgegrid-curl так:установки пакета питона в виртуальной среде

virtualenv venv 
source venv/bin/activate 
pip install httpie-edgegrid 

Однако, когда я пытаюсь запустить его, как это:

egcurl -X POST -uadmin:admin SOME_URL 

I получить:

-bash: ./egcurl: No such file or directory 

Что может быть причиной этого?

+2

Уверены ли вы, что вы не запускаете его с '. /' В начале имени программы? – spectras

+1

Обратите внимание, что Readme на самом деле говорит, что «httpie-edgegrid» - это другой пакет, который вы, возможно, захотите использовать. Если вы все еще хотите использовать этот, просто клонируйте репо или загрузите его. Это один файл python. Edit: и поместите его в venv/bin. – solarc

ответ

1

Проверьте следующее:

which egcurl 

Это, вероятно, сказать вам, что пытается выполнить egcurl в каталоге вы находитесь в настоящий момент, и сообщить что-то вроде «./egcurl.» Вы можете либо cd в папку, которая содержит egcurl, которая, если вы используете virtualenv, должна находиться в рабочей области/lib/... Затем запустите свой скрипт.

Если у вас возникли проблемы с поиском egcurl сделать следующее:

find/-name "egcurl" 

Затем вы можете настроить псевдоним на абсолютный путь или добавить его в virtualenv активировать скрипт.

0

Вы также можете использовать следующую команду:

pip show httpie-edgegrid 

Это покажет вам полезную информацию, например, где установлен пакет. Пример:

(venv) [email protected]:~/venv$ pip show httpie-edgegrid 
--- 
Metadata-Version: 2.0 
Name: httpie-edgegrid 
Version: 1.0.4 
Summary: Edgegrid plugin for HTTPie. 
Home-page: https://github.com/akamai-open/httpie-edgegrid 
Author: Kirsten Hunter 
Author-email: [email protected] 
Installer: pip 
License: Apache 2.0 
Location: /home/bruno/venv/lib/python2.7/site-packages 
Requires: httpie, pyOpenSSL, edgegrid-python 
Classifiers: 
Entry-points: 
    [httpie.plugins.auth.v1] 
    httpie_oauth1 = httpie_edgegrid:EdgeGridPlugin 

Убедитесь, что пакет установлен в вашем вену, а не в глобальном каталоге.

Хотя я думаю, что solarc прав, этот пакет, вероятно, не тот, который позволяет вам использовать egcurl. Вы устанавливаете этот код: https://github.com/akamai-open/httpie-edgegrid

1

Инструкции по установке довольно плохие и не дают понять, что сценарий egcurl необходимо установить отдельно. Для того, чтобы заставить его работать правильно, выполните следующие действия:

$ virtualenv venv 
$ source venv/bin/activate 
$ pip install edgegrid-python 
$ curl https://raw.githubusercontent.com/akamai-open/edgegrid-curl/master/egcurl > venv/bin/egcurl 
$ chmod +x venv/bin/egcurl 
$ egcurl --help 

Обратите внимание, что httpie-edgegrid это другая утилита, которая не использует egcurl скрипт на всех. Если вы хотите узнать, как его использовать, взгляните на это README.

Смежные вопросы