0

将Zeus与 Rails 一起使用时,我遇到了一个有趣的问题。至少可以说我的 shell 脚本编写不足。

好的,所以 zeus 在不到一秒的时间内启动了一个 rails 应用程序,并使测试等更快。zeus但是,您必须在任何 rails 命令之前附加。例如,zeus generate controllerzeus rake db:migrate。我宁愿在运行 zeus 时保留常规的 rails 命令。例如,rails generate controllerrake db:migrate

我有这 3 个命令别名

alias rails='zeus'

alias rspec='zeus rspec'

alias rake='zeus rake'

但是,如果 zeus 没有运行,我会收到此错误

error: Can't connect to master. Run zeus start first.

所以我要解决的问题是,无论 zeus 是否正在运行,我都想使用相同的 rails 命令

现在,当我运行时zeus start,它似乎zeus.sock存在。所以我想我可以检查zeus.sock一个函数中是否存在,然后相应地设置别名。我只是不确定最好的方法来做到这一点。-S 如果文件存在并且是套接字,我知道这是真的。就像是

if [ -S zeus.sock ]; then 
  # not sure where to go from here

有人对最好的方法提出建议吗?

提前致谢

4

1 回答 1

2

你可以使用一个函数,也许像这样:

zrail() {
    if [ -S zeus.sock ]; then
        zeus $*
    else
        rails $*
    fi
}

然后你这样称呼它:

zrail generate controller
于 2013-05-29T22:27:45.807 回答