2016-04-28 108 views
1

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

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

现在就猛砸,我做

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

接口返回“巨蟒:无法打开文件‘database_setup.py’:[错误2]没有此类文件或目录”。

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

+2

是该文件的可执行?运行'ls -l'并检查这个文件的权限。 –

+0

可能的重复http://stackoverflow.com/questions/15725273/python-oserror-errno-2-no-such-file-or-目录 – Inian

回答

3

您的计算机,它包含文件VagrantFilevagrant文件夹,就在你的虚拟机的文件夹/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 
+0

谢谢了,它完美的工作!现在全部清除:) – florvdl