如何创建 Bash 脚本来激活 Python virtualenv?
我的目录结构如下:
.env
bin
activate
...other virtualenv files...
src
shell.sh
...my code...
我可以通过以下方式激活我的 virtualenv:
user@localhost:src$ . ../.env/bin/activate
(.env)user@localhost:src$
但是,在 Bash 脚本中执行相同的操作不会:
user@localhost:src$ cat shell.sh
#!/bin/bash
. ../.env/bin/activate
user@localhost:src$ ./shell.sh
user@localhost:src$
我做错了什么?
最佳答案
当您获取资源时,您将激活脚本加载到您的事件 shell 中。
当您在脚本中执行此操作时,您将其加载到该 shell 中,该 shell 会在您的脚本完成时退出并返回到您原来的、未激活的 shell。
您最好的选择是在函数中执行此操作
activate () {
. ../.env/bin/activate
}
或别名
alias activate=". ../.env/bin/activate"
希望这会有所帮助。
关于python - 如何在 Bash 脚本中激活 virtualenv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13122137/