Wo befindet sich virtualenvwrapper.sh?

35

Ich weiß nicht, was peinlicher ist: dass ich nicht weiß, wie ich die Antwort auf diese Frage selbst finden soll, oder dass sie überhaupt erst gestellt werden muss, aber ...

Wo wird apt-getdas virtualenvwrapper.shSkript nach der Installation abgelegt virtualenvwrapper?

Ich bin am Ende ...

% sudo apt-get install virtualenvwrapper
...
% rehash
% which virtualenvwrapper.sh
virtualenvwrapper.sh not found
% which virtualenvwrapper
virtualenvwrapper not found
% find / -path /media -prune -o -name virtualenvwrapper.sh
/media
% dpkg-query -L virtualenvwrapper | grep 'virtualenvwrapper\.sh'
% sudo apt-get install virtualenvwrapper
Reading package lists...
Building dependency tree...
Reading state information...
virtualenvwrapper is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Ich habe nicht mehr viel zu versuchen: apt-getsagt, virtualenvwrapperist bereits installiert, aber ich kann virtualenvwrapper.shnirgendwo Anzeichen dafür finden.

UPDATE: Nun, ich habe gerade entdeckt, dass die Datei

/etc/bash_completion.d/virtualenvwrapper

... sieht sehr ähnlich aus virtualenvwrapper.sh. Ich kann nicht sagen, ob diese Datei dort abgelegt wurde, apt-getals ich sie ausgeführt habe apt-get install virtualenvwrapper(das Datum der Datei ist einige Monate her), aber wenn ja, dann bin ich von der offensichtlichen Dummheit der Anordnung überrascht ... Zum einen nicht jeder benutzt bash(ich benutze zufällig zsh). Zum anderen möchte man vielleicht zu virtualenvwrapper.shanderen Zeiten als dem Startup laufen ... Ich bin mir sicher, dass ich hier etwas Wichtiges vermisse, aber an der Oberfläche sieht es sicher so aus, als ob die apt-getInstallation von virtualenvwrappereinfach verzögert ist ... Jedenfalls, es verschwendete ungefähr drei Stunden meiner Zeit ...

kjo
quelle
2
Ein anderer zsh-Benutzer hier ... könnte genauso gut aufhören, das offizielle Paket für virtualenvwrapper zu verwenden, weniger Überraschungen auf diese Weise!
Kaleissin
Sie können auch /etc/bash_completion.d/virtualenvwrapperin zsh quellen. Es funktioniert so wie es ist.
Jim Stewart
@ JimStewart Ich kann viele Dinge tun. Der Sinn eines Pakets ist, dass ich nicht muss.
Melvyn

Antworten:

40

Von /usr/share/doc/virtualenvwrapper/README.Debian:

Im Gegensatz zu den Angaben in
/usr/share/doc/virtualenvwrapper/en/html/index.html Dieses Paket wird installiert
virtualenvwrapper.sh als /etc/bash_completion.d/virtualenvwrapper.

Virtualenvwrapper wird aktiviert, wenn Sie das Paket bash-completion und installieren
Aktivieren Sie die Unterstützung für die Bash-Vervollständigung in /etc/bash.bashrc oder in Ihrem ~ / .bashrc.

Wenn Sie nur virtualenvwrapper verwenden möchten, können Sie einfach hinzufügen

 source /etc/bash_completion.d/virtualenvwrapper

zu Ihrer ~ / .bashrc.

Ja, es ist ein bisschen schwer zu finden: D

Phoibos
quelle
2
Was ist mit zshBenutzern? Toll, ein anderes Paket, das sich auf jedem Betriebssystem anders verhält. Ich denke ein sudo apt-get purge virtualenvwrapperund sudo pip install virtualenvwrapperist in Ordnung.
Metakermit
1
Sie können auch /etc/bash_completion.d/virtualenvwrapperin zsh quellen. Es funktioniert so wie es ist.
Jim Stewart
1

Auf Ubuntu


Der Speicherort des Skripts ist:

/usr/share/virtualenvwrapper/virtualenvwrapper.sh


Wenn Sie also virtualenvwrapper mit dem Paketmanager installiert haben , müssen Sie die folgenden Zeilen in Ihre ~ / .bashrc einfügen :

export WORKON_HOME=~/.virtualenvs
source /usr/share/virtualenvwrapper/virtualenvwrapper.sh


Denken Sie auch daran, Ihre ~ / .bashrc neu zu laden mit:

$ source ~/.bashrc


Wenn alles gut funktioniert hat, können Sie mkvirtualenv wie folgt ausführen :

mkvirtualenv --python="/usr/bin/python3" venv_name
marcelfox
quelle