繁体   English   中英

在Windows中通过Cygwin安装RVM时出错

[英]Error Installing RVM through Cygwin in Windows

按照本教程 ,我尝试通过Cygwin安装RVM。

创建目录并克隆git存储库后,我需要运行./osx_or_cygin_kick_off来开始安装过程。

这是我收到的错误消息:

  $ ./osx_or_cygwin_kick_off
  ./automation/rvm/rvm_install: line 2: $'\r': command not found
  ./automation/rvm/rvm_install: line 3: syntax error near unexpected token `$'\r''
  '/automation/rvm/rvm_install: line 3: `install_rvm()
  ./automation/rvm/rvm_install_some_rubies: line 2: $'\r': command not found
  ./automation/rvm/rvm_install_some_rubies: line 3: syntax error near unexpected token `$'\r''
  '/automation/rvm/rvm_install_some_rubies: line 3: `install_some_rubies()

我读过某个地方的文章说,通过doc2unix将文件转换为unix格式可能会解决问题,但是这只会产生更多错误消息。

有什么建议么?

编辑:

问题是某些Cygwin git安装尝试执行魔术换行处理。 要修复git以使其停止破坏行尾,请运行:

git config --global core.autocrlf false

在澄清评论后,原始答案变得更通用:

该文件包含CRLF( \\r\\n )结束行序列,这在Windows上是典型的。 但是,Unix不喜欢它。 Unix(和Cygwin)只需要LF( \\n )。 我猜您是剪切并粘贴了该文件,还是通过某种附加Windows行尾的机制下载了该文件。

要在Cygwin中修复文件:

tr -d '\r' <filename >filename.tmp

检查并确保filename.tmp看起来正常,然后:

mv -f filename.tmp

或者,执行浏览器下载并保存(而不是剪切和粘贴),或者从Cygwin外壳中使用curlwget下载。

在上述所有情况下,您可能都没有可执行文件(可读)。 您可以通过以下方式使它可执行:

chmod 755 filename

或通过外壳显式运行它:

sh filename

如果使用Windows编辑器来处理Cygwin文件,则经常会遇到此问题。 Cygwin中的编辑器会很好(例如Vim)。 可选地,许多免费的Windows编辑器都支持Unix行尾。 Notepad ++是一个不错的选择,带有Unix行尾选项。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM