Cygwin-无法运行ruby命令

Cygwin-无法运行ruby命令,ruby,linux,unix,cygwin,Ruby,Linux,Unix,Cygwin,当我在cygwin中运行ruby-v时,它会显示我在windows中安装的ruby。仅供参考-我从未在cygwin安装中安装任何ruby 但是当我运行gem list时,我得到了一个错误: /cygdrive/c/ruby/bin/gem: C:/dev/ruby/bin/ruby.exe^M: bad interpreter: Permission denied 我在谷歌上搜索了很多,发现了这个问题。但没有人解释这意味着什么以及为什么会发生。有人能帮我回答这些问题并帮我解决这个问题吗

当我在cygwin中运行ruby-v时,它会显示我在windows中安装的ruby。仅供参考-我从未在cygwin安装中安装任何ruby

但是当我运行gem list时,我得到了一个错误:

 /cygdrive/c/ruby/bin/gem: 
 C:/dev/ruby/bin/ruby.exe^M: bad interpreter: Permission denied
我在谷歌上搜索了很多,发现了这个问题。但没有人解释这意味着什么以及为什么会发生。有人能帮我回答这些问题并帮我解决这个问题吗


多谢各位

在cygwin下,最好运行使用cygwin安装工具安装的cygwin版本ruby

您可以使用常规的ruby,但会遇到这样的互操作性问题

您在这里看到的是shell抱怨gem脚本第一行的shebang行末尾有一个^M,它告诉它要使用什么解释器。此^M是windows环境中的人工制品,在windows环境中,所有行都以该字符结尾,并且仅以unix自己使用的换行符结尾


您可以通过删除换行符来解决此问题,例如在gem上使用dos2unix命令,但不久您就会遇到进一步的问题……

那么,我想我是SOL了。我需要cygwin在windows中使用taza gem。它要求我使用cygwin,因为windows版本的Taza cywin命令无法工作,因为windows很糟糕。我没有听博士论文,被困在中间的台阶上。现在,即使是cygwin似乎也没用了。我该怎么办?页面底部的说明-我是否应该在linux虚拟机上执行所有这些unix命令,并将这些命令创建的项目复制粘贴到windows机器中?您可以使用ruby的Cygwin版本吗?不可以。我需要使用ruby on windows及其一组特殊gem。那么,您为什么要使用Cygwin呢?你可以使用mingw吗?如果是这样,就不要考虑原生的win32 ruby,而使用cygwin版本。运行cygwin.org上的安装程序-在前几个屏幕之后,您将看到一个巨大的程序列表。过滤“ruby”,你会看到ruby运行时出现。选择此选项并完成安装程序,您就可以在cygwin环境中使用ruby,而在下次运行bash shell时,它的路径不会出现同样的问题。如有必要,请从路径中删除win32版本。