Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails SSH+;Rails:在一行中使用ssh会话运行Rails(和Capistrano)命令_Ruby On Rails_Bash_Ssh_Capistrano - Fatal编程技术网

Ruby on rails SSH+;Rails:在一行中使用ssh会话运行Rails(和Capistrano)命令

Ruby on rails SSH+;Rails:在一行中使用ssh会话运行Rails(和Capistrano)命令,ruby-on-rails,bash,ssh,capistrano,Ruby On Rails,Bash,Ssh,Capistrano,我想知道是否有一种方法可以像 ssh user@host "cap production rails:console" 其中,host是我的Rails开发环境,然后可以使用远程控制台 当我尝试该命令时,它显示:bash:cap:command-notfound 然后我试着跑 ssh user@host "bundle exec cap production rails:console" 但它显示未找到bash:bundle:command 请注意,我使用的是rvm 我的.bashrc(摘录)

我想知道是否有一种方法可以像

ssh user@host "cap production rails:console"
其中,
host
是我的Rails开发环境,然后可以使用远程控制台

当我尝试该命令时,它显示:
bash:cap:command-notfound

然后我试着跑

ssh user@host "bundle exec cap production rails:console"
但它显示未找到bash:bundle:command

请注意,我使用的是
rvm

我的
.bashrc
(摘录):


您是否尝试使用完整路径来限制:

ssh user@host "/Users/anton/.rvm/gems/ruby-2.3.1@gotoweb/bin/cap production rails:console"

您是否尝试使用完整路径来限制:

ssh user@host "/Users/anton/.rvm/gems/ruby-2.3.1@gotoweb/bin/cap production rails:console"

当我登录时,默认路径是应用程序路径,因此是。即使手动添加应用程序路径,其结果也是对cap使用绝对路径。更新了我的答案。现在的错误是:
/usr/bin/env:'ruby\u executable\u hooks':没有这样的文件或目录
,看起来它也与路径相关。据我所知,ssh没有正确加载路径变量。我看到了一些关于生成垃圾桶的解决方案。试试看
rvm@global do gem regenerate\u binstubs;gem regenate_binstubs
。当我登录时,默认路径是应用程序路径,所以是。即使手动添加应用程序路径,其结果也是对cap使用绝对路径。更新了我的答案。现在的错误是:
/usr/bin/env:'ruby\u executable\u hooks':没有这样的文件或目录
,看起来它也与路径相关。据我所知,ssh没有正确加载路径变量。我看到了一些关于生成垃圾桶的解决方案。试试看
rvm@global do gem regenerate\u binstubs;gem重新生成容器