首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >更改ruby脚本中的目录?

更改ruby脚本中的目录?
EN

Stack Overflow用户
提问于 2010-07-27 08:14:35
回答 6查看 72.4K关注 0票数 105

我想创建一个新的rails应用程序,并为该应用程序启动rails服务器,所有内容都来自ruby脚本。

我的代码如下所示:

#!/usr/bin/env ruby
system "rails new my_app"
system "cd my_app"
system "rails server &"

但是,在运行"rails server &“时,路径不在my_app文件夹中,而是在父文件夹中。

有没有办法在脚本中更改目录,以便为新应用程序运行"rails server“、"rake about”和"rake db:migrate“?

所有关于技巧的工作都将受到感谢。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2010-07-27 08:15:56

使用Dir.chdir

Dir.chdir "my_app"
票数 108
EN

Stack Overflow用户

发布于 2010-07-29 08:45:47

不要听他们的,Dir.chdir("dir")可能会做错误的事情。您几乎总是希望将更改限制在特定的上下文中,而不会像下面这样影响程序的其余部分:

#!/usr/bin/env ruby
system "rails new my_app"
Dir.chdir("my_app") do
  system "rails server &"
end
# back where we were, even with exception or whatever
票数 381
EN

Stack Overflow用户

发布于 2019-01-17 22:43:29

系统支持:允许您指定其工作目录的chdir参数:

system("echo Test; pwd", chdir: '/tmp')

输出'/tmp‘

票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3339883

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档