这是参考我收到的回复说我需要获取此脚本才能激活 virtualenv。
不知道这意味着什么,这里的初学者试图弄清楚 virtualenv。
获取脚本是在当前 shell 的上下文中运行它,而不是在新的 shell 中运行它。
例如:
. myscript.sh
或者:
source myscript.sh
(取决于您正在运行的外壳)。
如果您在自己的 shell 中运行脚本,它对环境所做的任何更改都在该shell 中,而不是您从中调用它的那个。通过采购它,您可以影响当前 shell 的环境。
例如,检查以下成绩单:
pax> cat script.sh
export xyzzy=plugh
echo $xyzzy
pax> export xyzzy=twisty
pax> echo $xyzzy ; script.sh ; echo $xyzzy
twisty
plugh
twisty
pax> echo $xyzzy ; . script.sh ; echo $xyzzy
twisty
plugh
plugh
当您运行脚本(不同的 shell)时,它会设置xyzzy
为,plugh
但是当 shell 退出到原始 shell 时会丢失。您会发现原始值已“恢复”(用引号括起来,因为原始值实际上从未更改,只是它的副本)。
当您获取它时,就像您在当前 shell 中键入命令一样,因此对变量的影响是持久的。