在vagrant中运行python脚本

时间:2016-04-28 08:36:34

标签: python bash vagrant

我正在学习如何在Udacity课程中使用Vagrant,并且我们被要求在我们的虚拟机中运行Python脚本database_setup.py。

为此,我在计算机上的vagrant文​​件夹中创建了一个文件夹“udacityproject”。我在那里保存了我的文件database_setup.py。

现在在Bash,我做

$ vagrant up
$ vagrant ssh
$ cd udacityproject 
$ python database_setup.py

接口返回“python:无法打开文件'database_setup.py':[Errno 2]没有这样的文件或目录”。

这一定是个愚蠢的错误,但是我看不出我做错了什么......这里打开了一个类似的话题(Run Python script in Vagrant),但答案对我没有帮助。

1 个答案:

答案 0 :(得分:4)

您计算机上的vagrant文件夹(包含文件VagrantFile)是您的虚拟机上的 /vagrant 文件夹(位于<强> / 。它不是您的主目录。在vagrant ssh之后,您将登录用户vagrant的主目录。它是/home/vagrant/

$ vagrant ssh
$ pwd
/home/vagrant

树看起来像那样:

/root
/tmp
/usr
/var
/home
     |-- vagrant  # <-- You are here after logging
/vagrant
        |-- udacityproject
                         |-- database_setup.py  # <-- Your script is here
...

要运行脚本,您必须转到/vagrant

$ cd /vagrant

使用ls *,您可以检查您的文件是否存在。现在转到创建的文件夹并运行脚本

$ cd udacityproject
$ python database_setup.py

或者从一开始就这样做:

$ vagrant ssh
$ python /vagrant/udacityproject/database_setup.py