Jak utworzyć skrypt Bash, aby aktywować virtualenv w języku Python?
Mam strukturę katalogów taką jak:
.env
bin
activate
...other virtualenv files...
src
shell.sh
...my code...
Mogę aktywować virtualenv poprzez:
user@localhost:src$ . ../.env/bin/activate
(.env)user@localhost:src$
Jednak zrobienie tego samego ze skryptu Bash nic nie robi:
user@localhost:src$ cat shell.sh
#!/bin/bash
. ../.env/bin/activate
user@localhost:src$ ./shell.sh
user@localhost:src$
Co ja robię źle?
source
jest zmiana czegoś w bieżącej powłoce. Możesz użyć Pythona virtualenv, używając pełnej ścieżki./env/bin/python
.