无法以非 root 用户身份激活 virtualenv

Can't activate virtualenv as non root user

我只能以 root 用户身份激活我的 virtualenv:

source myprojectenv/bin/activate
-sh: 80: source: not found

sudo su
root@ubuntu-serv:/home/user/project# source myprojectenv/bin/activate
(myprojectenv) root@ubuntu-serv:/home/user/project#

我该如何解决?我需要它作为非 root 用户进行 Fabric 部署:

def production():
    env.host_string = 'xxx.xxx.xxx.xx'
    env.user = 'username'
    path = "/home/username/project/project"
    cd("home/username/project")
    run("sudo source projectenv/bin/activate")

使用以下语法激活虚拟环境

. myprojectenv/bin/activate

sh shell 没有 source 命令。