之间的差异。 venv/bin/activate 和./venv/bin/activate
Difference Between . venv/bin/activate and ./venv/bin/activate
全部
我对 运行 shell 脚本的格式有疑问
我遇到这个问题是我设置了一个虚拟环境
但是当我输入
. venv/bin/activate
代码没有问题 运行 successfully.But 我知道 运行 的另一种方法
./venv/bin/activate
bash 提示一个错误,说我没有权限这样做。
我不知道它们之间有什么区别,任何帮助将不胜感激
virtualenv 创建的 activate
脚本实际上并不是执行任何东西的标准脚本,但它是为现有 bash
会话定义更多环境变量的东西。请注意该文件中的注释:
# This file must be used with "source bin/activate" *from bash*
# you cannot run it directly
. venv/bin/activate
实际上是source
venv/bin/activate
的同义词。从本质上讲,virtualenv 所做的是在 current shell 中执行一些语句(将文件内容采购到这里),而不是开始一个新的 shell 就像执行二进制文件一样处理(即 ./venv/bin/python
)。
全部
我对 运行 shell 脚本的格式有疑问 我遇到这个问题是我设置了一个虚拟环境
但是当我输入
. venv/bin/activate
代码没有问题 运行 successfully.But 我知道 运行 的另一种方法
./venv/bin/activate
bash 提示一个错误,说我没有权限这样做。
我不知道它们之间有什么区别,任何帮助将不胜感激
virtualenv 创建的 activate
脚本实际上并不是执行任何东西的标准脚本,但它是为现有 bash
会话定义更多环境变量的东西。请注意该文件中的注释:
# This file must be used with "source bin/activate" *from bash*
# you cannot run it directly
. venv/bin/activate
实际上是source
venv/bin/activate
的同义词。从本质上讲,virtualenv 所做的是在 current shell 中执行一些语句(将文件内容采购到这里),而不是开始一个新的 shell 就像执行二进制文件一样处理(即 ./venv/bin/python
)。